使用mod_rewrite .htaccess将www添加到http://,同时从https://中删除www

时间:2012-08-02 20:17:21

标签: http .htaccess mod-rewrite https firewire

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

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

对于同一网站

1 个答案:

答案 0 :(得分:0)

  1. 抓住Apache Mod_Rewrite Documentation。还http://whathaveyoutried.com

  2. 您可以使用HTTPS(或RewriteCond {%HTTPS} on

  3. 查看!on的状态
  4. 您可以使用www.(或RewriteCond {%HTTP_HOST} ^www\.(.*)$)在主机上查看!^www\.(.*)$。匹配的模式位于%nRewriteRule反向引用位于$n

  5. 您可以使用RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L]重写网址。通过切换http https并移除www.,您可以将其更改为符合HTTPS规则。

  6. 最终代码:

    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