我想使用mod_rewite / .htaccess执行以下操作:
对于同一网站
答案 0 :(得分:0)
抓住Apache Mod_Rewrite Documentation。还http://whathaveyoutried.com。
您可以使用HTTPS
(或RewriteCond {%HTTPS} on
)
!on
的状态
您可以使用www.
(或RewriteCond {%HTTP_HOST} ^www\.(.*)$
)在主机上查看!^www\.(.*)$
。匹配的模式位于%n
,RewriteRule
反向引用位于$n
。
您可以使用RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L]
重写网址。通过切换http
https
并移除www.
,您可以将其更改为符合HTTPS
规则。
最终代码:
RewriteCond {%HTTPS} on
RewriteCond {%HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
RewriteCond {%HTTPS} !on
RewriteCond {%HTTP_HOST} !^www\.(.*)$
RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L]
我会再说一遍,http://whathaveyoutried.com