2017-02-03 116 views
0

請幫幫忙,我有一個網站,以英語爲主要語言.htaccess的語言重定向循環

它有語言文件夾:

/de 
/es 
/it 
/fr 

沒有EN英語文件夾,因爲我有英語爲主要域,以便英文文件是公開的HTML文件夾

我htaccess的

RewriteCond %{REQUEST_URI}   ^/$ 
RewriteCond %{HTTP:Accept-Language} ^(it|fr|de|es) [NC] 
RewriteRule ^$ http://%{HTTP_HOST}/%1/ [L,R=301] 

這個工作完全不同於這個bug 有一個循環

如果語言瀏覽器不是英語,但西班牙語或法語等他們不能點擊英文標誌,以他們的英文版本,這是沒有子文件夾的主要域它只是重定向循環回他們自己的語言

有沒有簡單的方法來解決這個問題,而不創建/ en?

非常感謝

回答

0

是的,我建議你的鏈接到英文上設置?lang=en和改變你的規則:

RewriteCond %{QUERY_STRING} !=lang=en 
RewriteCond %{HTTP:Accept-Language} ^(it|fr|de|es) [NC] 
RewriteRule ^$ http://%{HTTP_HOST}/%1/ [L,R] 

而且還改變了重定向到臨時,我在上面做了,或重定向將被緩存在瀏覽器中。

我刪除了request_uri檢查,因爲它已在您的RewriteRule中檢查過。

+0

謝謝你會嘗試它,不知道我完全理解,但會嘗試! – Paul

+0

它不工作,說pagecant顯示?? – Paul