避免重定向子域的 htaccess 重定向
Avoid redirect htaccess redirect for subdomain
我们目前在我们的主域 (www.example.com) to automatically go to the main directory (www.example.com/main) 上使用重定向,但不是少数允许使用以下代码的其他目录之一;
RewriteCond %{REQUEST_URI} !/(logos|press|main)/ [NC]
RewriteRule ^(.*)$ /main/ [R=301,L]
这很好用,但我们现在看到一个问题,尽管在尝试使用子域 (dev.example.com) 时会自动重新路由到 www.example.com/main。
我如何维护我们在主页上执行的正常重定向,同时允许访问 dev.example.com 子域?
嗯,我假设两个主机(“主域”和“子域”)都来自同一个 http 服务器?如果是这样,您显然需要一个条件来确保仅在请求特定主机时才应用您的重定向规则 ("www.example.com"):
RewriteEngine on
RewriteCond {HTTP_HOST} ^(www\.)?example\.com$
RewriteCond %{REQUEST_URI} !^/(logos|press|main)/ [NC]
RewriteRule ^ /main{REQUEST_URI} [R=301,L]
我们目前在我们的主域 (www.example.com) to automatically go to the main directory (www.example.com/main) 上使用重定向,但不是少数允许使用以下代码的其他目录之一;
RewriteCond %{REQUEST_URI} !/(logos|press|main)/ [NC]
RewriteRule ^(.*)$ /main/ [R=301,L]
这很好用,但我们现在看到一个问题,尽管在尝试使用子域 (dev.example.com) 时会自动重新路由到 www.example.com/main。
我如何维护我们在主页上执行的正常重定向,同时允许访问 dev.example.com 子域?
嗯,我假设两个主机(“主域”和“子域”)都来自同一个 http 服务器?如果是这样,您显然需要一个条件来确保仅在请求特定主机时才应用您的重定向规则 ("www.example.com"):
RewriteEngine on
RewriteCond {HTTP_HOST} ^(www\.)?example\.com$
RewriteCond %{REQUEST_URI} !^/(logos|press|main)/ [NC]
RewriteRule ^ /main{REQUEST_URI} [R=301,L]