【问题标题】:Apache2 mod_rewrite and .htaccess - HTTP_HOST not working correctlyApache2 mod_rewrite 和 .htaccess - HTTP_HOST 无法正常工作
【发布时间】:2011-12-27 18:18:39
【问题描述】:

我正在尝试在我的 VPS 上编写一个基本的重写规则,以去除主机名开头的 www:

RewriteCond ${HTTP_HOST} ^www.example.com$ [NC]
重写规则 ^(.*)$ http://example.com/$1 [R=301,L]

它不工作。事实上,如果我在模式前面放一个感叹号,它匹配......然后进入重定向循环!我在这里想念什么?我需要添加/删除 example.com 作为服务器别名吗?

【问题讨论】:

  • 我是个智障。应该是 %{HTTP_HOST}。这是漫长的一天......现在已经解决了。

标签: apache .htaccess mod-rewrite


【解决方案1】:

更通用的解决方案,无需将域硬编码到其中。可能很有用,即使你已经开始工作了。

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=302,L,QSA]

【讨论】:

    猜你喜欢
    • 2012-08-05
    • 2012-05-07
    • 2014-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-23
    • 1970-01-01
    相关资源
    最近更新 更多