2013-07-24 108 views
2

我真的堅持在這個美麗的htaccess腳本(規則)的轉換強制非www到WWW URL考慮http或https其完美的工作,但我不能它從www到非www的工作方式相反,你可以幫我嗎?htaccess強制www到非www的考慮http或https

RewriteCond %{HTTP_HOST} !^www\. 
RewriteCond %{HTTPS}s ^on(s)| 
RewriteRule^http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 

謝謝我真的停留在那些htaccess符號!

+0

可能重複[htaccess的重定向非www HTTP和HTTPS(http://stackoverflow.com/questions/2015159/htaccess-redirect-for - 壬WWW-既-HTTP-和HTTPS) – spinsch

回答

4

對於製作www to non-www上面的代碼將不會工作,因爲變量捕獲在RewriteCond中的工作方式。你需要將它們分解成2分的規則是這樣的:

RewriteCond %{HTTPS} off 
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
RewriteRule^http://%1%{REQUEST_URI} [R=301,L] 

RewriteCond %{HTTPS} on 
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
RewriteRule^https://%1%{REQUEST_URI} [R=301,L] 
相關問題