0

我想使用 mod_rewite/.htaccess 执行以下操作:

  • 将 www 添加到 http 网址
  • 从 https url 中删除 www

对于同一个站点

4

1 回答 1

0
  1. 获取Apache Mod_Rewrite 文档。还有http://whathaveyoutried.com

  2. 您可以HTTPS使用RewriteCond {%HTTPS} on(或!on)检查状态

  3. 您可以使用(或)www.在主机上检查。匹配的模式是 in ,反向引用是。RewriteCond {%HTTP_HOST} ^www\.(.*)$!^www\.(.*)$%nRewriteRule$n

  4. 您可以使用 重写 URL RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L]。通过切换httphttps删除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

于 2012-08-03T12:04:57.117 回答