我通过将非www请求重定向到www。htaccess重写规则。
重写Cond%{HTTP_HOST}!^www
重写规则(.*)www.%{HTTP_HOST}/1美元[L, R=301]
但现在我在子域方面遇到了问题。当我访问时,触摸。111.com
然后上述规则重定向到触摸。www.111。com
(不可访问),网站在触摸设备上中断。
请告诉我如何解决上述问题。
# For sites running on a port other than 80
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{SERVER_PORT} !^80$
RewriteRule ^/(.*) http://www.example.com:%{SERVER_PORT}/$1 [L,R]
# And for a site running on port 80
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/(.*) http://www.example.com/$1 [L,R]
http://httpd.apache.org/docs/2.0/misc/rewriteguide.html
这是一个通用解决方案,可用于任何域名:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
看见http://www.htaccessredirected.com/force-redirecting-non-www-to-www-htaccess.htm
如果您想仅重定向domain.com
到www.domain.com
并保留子域(如touch.domain.com
),则必须具体:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com [NC]
RewriteRule ^(.*) http://www.domain.com/$1 [L,R=301]
我有这个在我的. htaccess文件: 但是每当我访问根目录上的文件时,就像它将重定向到。 我如何纠正它,以便它将正确地重定向到?
问题内容: 我想使用PHP将所有www.domain.com请求重定向到domain.com,基本上是: 但是我确实想像SO中那样维护请求的URL,例如: 应该重定向到: 我不想依靠解决方案,并且我不确定要使用哪种变体来实现这一目标。同样,保留HTTPS协议将是一个加号。 我应该怎么做? 问题答案: 将用户重定向到完全相同的页面,www。完整。 因此,要摆脱www。,我们只需替换一行: 那应该起作
我有一个多个域共享一个htaccess的系统。目前,我使用以下命令将所有非www请求重定向到www。 唯一的问题是现在我根本不能使用子域,因为子域。我的主人。com将被重定向到www.sub-domain。我的主人。com 上述规则是否有一种方法可以排除所有以“sub-”开头的请求?而不是重定向到www。 更新: 在我的表格中只有以上5行。htaccess将抛出“500-内部服务器错误”。
我正在尝试使用重定向主网站URL。从www到非www的htaccess,但使用下面的代码片段也会影响我的子域博客。我的域名。通用域名格式。如果我进入子域。我的域名。com我被直接重定向到mydomain。通用域名格式 如何从规则中排除子域? Litespeed web服务器
我有以下htaccess代码: 我希望我的站点被重定向到使用HTTPS,并强制执行子域,但当我访问(没有HTTPS),它不会将我重定向到使用HTTPS。
问题内容: 是否有可能以某种方式将www重定向到node.js中的非www URL?由于节点Web服务器中没有htaccess,我很好奇该怎么做。 问题答案: 你在用快递吧?如果是这样,则可以使所有GET请求都通过的路由处理程序,检查它们是否为“ www” URL,并在适当时重定向到适当的非www URL。