gpt4 book ai didi

apache - htaccess 基于 TLD 重写 URL

转载 作者:行者123 更新时间:2023-12-02 11:51:29 25 4
gpt4 key购买 nike

在我的网站上,我有兴趣将我的论坛从子目录移动到子域。论坛当前位于 example.com/forums,我想将它们移至 forums.example.com。移动后,我想使用 htaccess 到 301 将所有论坛流量重定向到子域,但问题是我的网站有两个 TLD,一个 .com 域和一个 .net 域。

我目前正在尝试使用以下方法重定向流量:

RewriteCond %{HTTP_HOST} !=forums.example.net
RewriteRule ^forums(/(.*))?$ https://forums.example.net/$2 [L,R=301]

RewriteCond %{HTTP_HOST} !=forums.example.com
RewriteRule ^forums(/(.*))?$ https://forums.example.com/$2 [L,R=301]

这只能起到一半作用。无论我访问哪个 TLD,它总是将我重定向到 forums.example.net,即使我是从 example.com/forums 访问的,在这种情况下我想要它访问 forums.example.com。我怎样才能实现这个目标?

最佳答案

您可以使用此单一规则作为forums/.htaccess中的第一条规则,而不是顶级.htaccess:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(?:www\.)?(example\.(?:com|net))$ [NC]
RewriteRule ^.*$ http://forums.%1/$0 [L,R=301,NE]

对于 root .htaccess,请使用此规则作为您的第一条规则:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(?:www\.)?(example\.(?:com|net))$ [NC]
RewriteRule ^forums(/.*)?$ http://forums.%1$1 [NC,L,R=301,NE]

关于apache - htaccess 基于 TLD 重写 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38947063/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com