Ich habe eins maindomain.com
,其中包含一个网站,这里的一些页面应该暂时重定向到我的子域 tmp.maindomain.com
.
Also habe ich diese Weiterleitung verwendet und sie leitet zu tmp.maindomain.com
并且我得到一个无限循环重定向到 tmp.maindomain.com
:
redirect 301 /mypage.php https://tmp.maindomain.com/mypage.php
Mein Ziel ist es, wenn ein Benutzer versucht, darauf zuzugreifen https://www.maindomain.com/mypage.php
或 https://maindomain.com/mypage.php
他应该被重定向 302 到 https://tmp .maindomain.com/mypage.php
.
Vielen Dank für Ihre Hilfe.
如果子域和主域指向同一位置(或后者的子目录),则会出现无限循环。
在这种情况下,您将需要使用 mod_rewrite(而不是 mod_alias)并显式检查请求的主机名。
但您还使用了 301 永久重定向。您需要使用 302 来代替。 301由浏览器持久缓存,因此在测试之前需要确保清除所有缓存。
在子域的
.htaccess
文件的顶部、任何现有的 mod_rewrite 指令之前尝试以下操作。请注意,
RewriteRule
模式(第一个参数)匹配的 URL 路径不以斜线开头(与 mod_aliasRedirect
不同)指令)。$0
反向引用包含与整个RewriteRule
模式 匹配的 URL 路径。 IE。本例中为mypage.php
。这只是节省了重复,因为您重定向到目标处的相同 URL 路径。这默认为 302 临时重定向。