【问题标题】:htaccess redirect for https, www and com to co.ukhtaccess 将 https、www 和 com 重定向到 co.uk
【发布时间】:2016-06-18 09:52:41
【问题描述】:

我已经尝试解决这个问题几个小时了,但无济于事。言归正传,我拥有具有不同 TLD、.com 和 .co.uk 的相同域。这是我目前的 htaccess 文件:

RewriteCond %{HTTPS} off
# First rewrite to HTTPS:
# Don't put www. here. If it is already there it will be included, if not
# the subsequent rule will catch it.
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# Now, rewrite any request to the wrong domain to use www.
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# com to co.uk redirect
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.co.uk/$1 [R=301,L]

我一直在尝试在这里测试配置:http://htaccess.mwl.be/ 但我得到了一些奇怪的结果,比如 .com 域被附加到 .co.uk 域。

似乎有些规则有效,而另一些则无效。目标是将 example.com 的所有变体重定向到https://www.example.co.uk 例如:

任何人都可以看到我在哪里出错了吗?我对 htaccess 重定向不是很有经验,因此不胜感激。

【问题讨论】:

    标签: apache .htaccess redirect mod-rewrite


    【解决方案1】:

    您可以使用以下内容:

    RewriteEngine on
    
    RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$
    RewriteRule ^ https://www.example.co.uk%{REQUEST_URI} [NE,L,R]
    

    上面的规则将重定向:

    【讨论】:

    • 感谢您的回答。问题是它似乎没有重定向:example.com 到example.co.uk
    • 请清除浏览器的缓存或尝试使用不同的网络浏览器进行测试。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-08
    • 2015-02-16
    • 1970-01-01
    相关资源
    最近更新 更多