【问题标题】:.htaccess redirect with host or ip address.htaccess 使用主机或 IP 地址重定向
【发布时间】:2012-06-13 19:54:18
【问题描述】:

我在同一台服务器上有 2 个不同的域: 服务器地址 100.12.12.222 上的 domain1.com 和 domain2.com 以及非 www 到 www 的简单重定向规则

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

我想要一个规则,比如:如果 host=domain1.com 然后重定向到 www.domain1.com 如果 host=100.12.12.222 不要重定向到 www.domain1.com

我尝试添加:

RewriteCond %{REMOTE_ADDR} ^100\.12\.12\.222
RewriteRule (.*) http://100.12.12.222/$1 [R=301,L]

如果第二个域没有非 www 到 www 重定向,则此方法有效

所以我用谷歌搜索并阅读了 apache 建议并尝试结合以下内容:

RewriteCond %{HTTP_HOST} !^www\. [OR]
RewriteCond %{REMOTE_ADDR} !^100\.12\.12\.222
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

在这里我尝试使用 HTTP_HOST 和各种东西,但它没有正确重定向。 非常感谢您的帮助。

【问题讨论】:

    标签: .htaccess redirect


    【解决方案1】:

    删除 [or] 标志。您想重定向到 www。如果主机不是www... 并且远程 != 100.12.12.222

    【讨论】:

    • 感谢您的帮助 - 事实上我不得不将 'REMOTE_ADDR' 更改为 HTTP_HOST 并删除 'OR' :)
    猜你喜欢
    • 2014-03-09
    • 1970-01-01
    • 1970-01-01
    • 2016-01-09
    • 1970-01-01
    • 1970-01-01
    • 2020-06-06
    • 2012-04-12
    • 1970-01-01
    相关资源
    最近更新 更多