我正在尝试在.htaccess中设置301重定向
'dir'是一个设定值,因此它不是任何目录,而只是指定的目录。这就是我所拥有的 -
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.domain\.com/dir$ [NC]
RewriteRule ^(.*) http://dir.domain.com/$1 [L,R=301]
答案 0 :(得分:1)
HTTP_POST不是有效选择。您甚至可以使其更加健壮,但这应该通过具有两个条件将其限制到特定域。一个用于主机头,另一个用于子文件夹。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.domain\.com [NC]
RewriteCond %{REQUEST_URI} ^/dir/$ [NC]
RewriteRule ^.*$ http://dir.domain.com/ [L,R=301]
答案 1 :(得分:0)
我猜您的问题是您尝试将HTTP_POST
条件设置为包含子网段的完整主机。 HTTP_POST
仅包含在这种情况下为www\.domain\.com
的主机。
您可能会这样做:
RewriteEngine On
RewriteCond %{HTTP_POST} ^www\.domain\.com$ [NC]
RewriteRule ^/dir/(.*) http://dir.domain.com/$1 [L,R=301]