【发布时间】:2020-01-02 22:58:25
【问题描述】:
我正在为以下问题寻找可行的解决方案:
我有很多域具有相同的网站。
当有人访问 www.domainname.tld 时,应该重定向到 http://www.domainname.tld
当有人访问 subdomain.domainname.tld 时,应该重定向到 http://www.domainname.tld
当有人访问 domainname.tld 时,应该重定向到 http://www.domainname.tld。
============================
我尝试了以下方法:
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule (.*) http://www.%{SERVER_NAME}/$1 [L,R=301]
============================
问题:输入 subdomain.domainname.tld 时会重定向到 www.subdomain.domainname.tld
============================
我希望它在 .htaccess 中。
我已经搜索过了,可惜没有成功。
如果有人能提供解决方案,我会很高兴:)
============================
在您的帮助下,我能够将代码更改为:
RewriteCond %{HTTP_HOST} ^([^/.]+)\.(.*)\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%2\.%3/$1 [L,R=301]
我只需要最后一次更改 -> 它不应该指向http://domain.tld -> 我更喜欢http://www.domain.tld
我尝试了不同的尝试来在目标中添加 www - 但没有任何成功。
我以匿名解决方案结束,这对我来说效果很好:
RewriteCond %{HTTP_HOST} !^www\.[^.]+\.[^.]+$
RewriteCond %{HTTP_HOST} ([^.]+\.[^.]+)$
RewriteRule (.*) http://www.%1/$1 [L,R=301]
感谢所有有时间阅读和帮助的人!
【问题讨论】:
-
我还没有找到仅带有固定 URL 的参数的解决方案。