.htacces将子文件夹重定向(通配符)到https子域?

时间:2015-07-07 09:56:20

标签: php apache .htaccess mod-rewrite redirect

我有一个名为“polygon”的文件夹,我可以通过以下方式访问:

我为此文件夹创建了一个子域,也可以通过两种方式访问​​它:

我为此子域提供了https访问权限:https://polygon.website.com

我想将文件夹和子域名( www )重定向到:https://polygon.website.com

在使用Cpanel制作的.htaccess中,我进行了重定向:

RewriteCond %{HTTP_HOST} ^website\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.website\.com$
RewriteRule ^secure\/?(.*)$ "https\:\/\/polygon\.website\.com\/$1" [R=301,L]

但由于循环错误消息,我无法将http://(www.?)website.com/polygon重定向到安全网址...

提前感谢您的帮助! :)

1 个答案:

答案 0 :(得分:0)

您可以像这样单独排除每个sub1,sub2;

<IfModule mod_rewrite.c>
RewriteEngine On

RewriteCond %{HTTP_HOST} ^sub1\.domain\.com [NC]
RewriteRule ^(.*) - [L]

RewriteCond %{HTTP_HOST} ^sub2\.domain\.com [NC]
RewriteRule ^(.*) - [L]

RewriteCond %{HTTP_HOST} !^www\.domain\.com [NC]
RewriteRule ^(.*) http://www.domain.com/$1 [L,R=301]
</IfModule>

或者只是具体一点,你只想用rewriteCond将domain.com重定向到www.domain.com

<IfModule mod_rewrite.c>
RewriteEngine On

RewriteCond %{HTTP_HOST} ^domain\.com [NC]
RewriteRule ^(.*) http://www.domain.com/$1 [L,R=301]
</IfModule>

参考

https://serverfault.com/questions/391843/htaccess-redirect-non-www-to-www-and-retain-subdomains-from-redirecting