[英]What's wrong with this .htaccess file?
我的.htaccess
文件存在部分問題,無法終生發現問題所在。
目標是:我有example.com
,我希望其規范形式為www.example.com
。 我的工作還好。 我在文件夾/lang/chinese
也有一個子域,我想將其解析為china.example.net
。 這也很好。 最后,我有一個(停放的)域example.net
,我想將其重定向到example.com
並因此解析為www.example.com
。
這是最后一部分不起作用。 如果我將www.example.net
放在瀏覽器中,則該地址將保留在地址欄中。
這是我的.htaccess
文件的相關部分:
Options +FollowSymlinks
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} china.example.com [NC]
RewriteRule ^(.*)$ http://china.example.com$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com$1 [L,R=301]
RedirectMatch 301 ^/lang/chinese/(.*)$ http://china.example.com/$1
RewriteCond %{http_host} ^example\.net [nc]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=permanent,nc,L]
顯然我在這里做錯了。 我怎樣才能解決這個問題?
對於此規則:
RewriteCond %{http_host} ^example\.net [nc]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=permanent,nc,L]
^
告訴正則表達式與行首匹配。 因此,這意味着您實際上從未在那里搜索過“ www”。
我相信您會希望將其更改為:
RewriteCond %{HTTP_HOST} ^(www\.)?example\.net [nc]
來自Apache的信息:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.