-2

就像标题一样。我想将整个文件夹(在本例中为 /w1/)从 http 重定向到 https。如何重定向:http ://testdomain.com/system/w1/(以及所有包含该文件夹)到此:https ://testdomain.com/system/w1/(以及所有包含该文件夹)。因此,例如http://testdomain.com/system/w1/w1_input.php将被重定向到https://testdomain.com/system/w1/w1_input.php

我试图使用这种规则:

RewriteCond %{HTTPS} !=on
RewriteRule ^/w1(.*)$ https://testdomain.com/system/w1/$1 [R=301,L]

但这什么也没做

4

2 回答 2

1

不需要 .htaccess 和/或重写。只需在 http.conf 级别将 RedirectMatch 放入您的非 ssl 主机定义中。

<Host example.com:80>
   RedirectMatch 301 (.*) https://example.com$1
</Host>
于 2012-09-14T05:20:11.983 回答
1

如果这些规则在 htaccess 文件中,则在通过重写引擎之前,前导斜杠会从 URI 中剥离,因此^/w1不会匹配任何内容。看起来您可能在/system/目录中的 htaccess 文件中有这些规则:

RewriteCond %{HTTPS} !on
RewriteRule ^w1/(.*)$ https://testdomain.com/system/w1/$1 [R=301,L]

或者如果不是:

RewriteCond %{HTTPS} !on
RewriteRule ^system/w1/(.*)$ https://testdomain.com/system/w1/$1 [R=301,L]
于 2012-09-14T05:21:43.640 回答