我的htaccess重写规则将www附加到我的ip,所以当我输入我的浏览器时
1.1.1.1
它会自动变为
www.1.1.1.1
并且无法加载。
如何避免这种情况,但继续将www
追加到domain.com
类型的请求?
原始规则:
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
谢谢!
答案 0 :(得分:1)
您可以使用此.htaccess:
RewriteCond %{HTTP_HOST} !(^www\.|1\.1\.1\.1)
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
或者对于所有IP地址:
RewriteCond %{HTTP_HOST} !(^www\.|\d+\.\d+\.\d+\.\d+)
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
答案 1 :(得分:0)
试试这个。
# force non-www domain
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
RewriteRule (.*) http://example.com/$1 [R=301,L]
这可能是另一种解决方案。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1%{REQUEST_URI} [R=301,QSA,NC,L]