2013-01-07 33 views
1

我遇到了URL格式問題。htaccess中特定的301重定向問題

我需要發送 /EN 到/

的問題是,我只需要/ EN(完全一致),而不是/ EN /富...

我知道如何做到這一點的以.html結尾的字符串,但是在這裏我有其他URL// en/stuff並且它們也匹配。

真的很感激幫助...

回答

1

您需要RewriteCond例如指定字符串的結尾

RewriteEngine on 

RewriteCond %{REQUEST_URI} ^/en$ 
RewriteRule ^(.*)$/[L,R=301] 

請注意,狀態模式以及重寫規則模式是一個Perl兼容的正則表達式(添加了一些新):

錨杆:

  • ^ - 啓動的線錨
  • $ - 行尾定位點

編輯

BTW,有非常好的htaccess的測試http://htaccess.madewithlove.be/,你可以用它來測試規則。

0

啓用mod_rewrite的,並通過httpd.conf的.htaccess,然後把這個代碼在你.htaccessDOCUMENT_ROOT目錄:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteRule ^en/?$/[L,R=301,NC] 

這將重定向/en/en//也注意到,/EN也會因數控的處理(忽略大小寫)此處使用的標誌。