0

我在同一台服务器上有 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 和各种东西,但它没有正确重定向。您的帮助将不胜感激。

4

1 回答 1

1

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

于 2012-06-10T19:22:16.493 回答