htaccess 仅在域不是 X 时重定向到子目录
htaccess to only redirect to subdir if domain is not X
情况: 所以我有几个域指向同一个网站。域是某些脚本所在的变量 运行。只有一个域作为默认域(例如 default.tld)。
问题: 我希望域 default.tld 保持独立,但所有其他域必须重定向到 http://wildcarddomain.tld
到 http://wildcardomain.tld/home
我试过的:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www.)?default.tld [NC]
RewriteRule ^(.*)$ http://%{HTTP_HOST}/home [R=301,L]
不幸的是,这让我陷入了重定向循环。也许是其他原因造成的,但我想确定这不是我的 htaccess。
您的条件几乎是正确的,但 RewriteRule
是个问题,并且会在您匹配 .*
时导致重定向循环,而 .*
将始终匹配。
您需要使用:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www\.)?default\.tld$ [NC]
RewriteRule ^/?$ /home [R=301,L]
情况: 所以我有几个域指向同一个网站。域是某些脚本所在的变量 运行。只有一个域作为默认域(例如 default.tld)。
问题: 我希望域 default.tld 保持独立,但所有其他域必须重定向到 http://wildcarddomain.tld
到 http://wildcardomain.tld/home
我试过的:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www.)?default.tld [NC]
RewriteRule ^(.*)$ http://%{HTTP_HOST}/home [R=301,L]
不幸的是,这让我陷入了重定向循环。也许是其他原因造成的,但我想确定这不是我的 htaccess。
您的条件几乎是正确的,但 RewriteRule
是个问题,并且会在您匹配 .*
时导致重定向循环,而 .*
将始终匹配。
您需要使用:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www\.)?default\.tld$ [NC]
RewriteRule ^/?$ /home [R=301,L]