2013-09-26 158 views
1

我試圖將網站的語言更改爲英文,當URL具有/ en /域後。當url在域名後面有/ en /後,PHP會更改翻譯文件。htaccess忽略URL的特定部分

我的系統將/ en/part添加到所有鏈接,甚至是CSS文件的URL等。它工作正常,但當部分位於URL中時,我無法訪問任何文件。即使/ en/part在那裏,我仍然想要找到所有的文件和文件夾。

例如:

http://domain.com/en/images/image.png

顯示從這裏

http://domain.com/images/image.png

的形象,但它必須保持/ EN /部分的URL,這樣的語言不會更改。

我有這個在我的.htaccess文件:

RewriteEngine on 
Options +FollowSymlinks 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . index.php [L] 

這重定向的URL,但它刪除/ EN /一部分。 :/

RedirectMatch ^/en/(.*) /$1 

那麼它甚至有可能重定向並離開原來的網址?如果沒有,只有當它是現有的文件夾或文件時,纔有可能重定向(並更改URL)?謝謝。 :)

+0

查找: 「內部重寫mod_rewrite的」 – Sumurai8

回答

1

這個替換您RedirectMatch行:

RewriteRule ^en/([^.]+\.(?:jpe?g|gif|bmp|png|tiff|css|js))$ /$1 [L,NC] 
+0

謝謝你,當我把它選擇了FollowSymLinks +之後的工作。 :) – user2816746

+0

很高興知道它的工作原理,請考慮將其標記爲「已接受」,以便將來遇到類似問題的用戶將能夠輕鬆看到它。 – anubhava