2013-07-06 41 views
0

我的網站根目錄en和te中有兩個文件夾。 我需要編寫.htaccess文件將請求重定向到/如果cookie語言= en 或者重定向到/ te if語言!= en或cookie語言未設置。.htaccess根據Cookie重定向到子目錄

RewriteEngine On 
RewriteBase /cookie/ 
RewriteCond %{HTTP_COOKIE} language=te [NC] 
RewriteRule ^(.*)$ /te [L] 

,但上面的代碼不工作

+0

歡迎來到SO。如果下面的答案之一解決了您的問題,您應該接受它(點擊相應答案旁邊的複選標記)。這有兩件事。它可以讓每個人都知道你的問題已經得到解決,並且可以幫助你獲得幫助。 –

回答

0

您的代碼不會將用戶重定向,因爲你忽略了適當的重寫標誌。相反,它只會重寫請求(靜默地在服務器上)而不更改url。

您的規則改成這樣:

RewriteRule ^(.*)$ /te/$1 [R=301] 

(你也沒有附加頁面的路線,語言的關鍵 - 我還附加了$1。)

1

不知道,如果你想重定向用戶,或在內部重寫url(刪除R = 301):

RewriteEngine On 

RewriteCond %{HTTP_COOKIE} language=(en|te) [NC] 
RewriteCond %{REQUEST_URI} !^/(te|en)/ [NC] 
RewriteRule ^(.*)$ /%1/$1 [R=301,L] 
相關問題