对于 www.mysite.com 或 mysite.com 来说,合适的 RewriteCond 是什么?
我尝试了此操作,但浏览器中出现重定向错误
RewriteCond %{HTTP_HOST} ^(www\.mysite|mysite)\.com [NC]
Run Code Online (Sandbox Code Playgroud)
编辑
<Directory /var/www/maintenance/public_html>
Options +FollowSymlinks
RewriteOptions inherit
RewriteEngine on
#
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^ http://www.example.com/ [R=301,L]
RewriteCond %{HTTP_HOST} ^www.example\.com$ [NC]
RewriteRule ^/. http://www.example.com/ [R=301,L]
</Directory>
Run Code Online (Sandbox Code Playgroud)
您已经删除了其他问题,该问题实际上包含有关该问题的详细信息。您的 RewriteCond 对于匹配这两个主机名是正确的,问题是您正在重定向http://www.mysite.com/
到http://www.mysite.com/
,这就是循环的来源。仅当请求不是针对http://www.mysite.com/
. 为此,您可能需要两条规则。
RewriteCond %{HTTP_HOST} ^mysite\.com$ [NC]
RewriteRule ^ http://www.mysite.com/ [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.mysite\.com$ [NC]
RewriteRule !^/?$ http://www.mysite.com/ [R=301,L]
Run Code Online (Sandbox Code Playgroud)
第一条规则仅在 mysite.com 上运行,并将所有内容重定向到http://www.mysite.com/
. 第二条规则仅在 www.mysite.com 上运行,并将除 之外的所有内容重定向/
到http://www.mysite.com/
。(该.
平均值匹配任何字符之一——因为/
没有任何其他字符,所以它不会匹配。)
归档时间: |
|
查看次数: |
222 次 |
最近记录: |