-2

タイトル通りです。フォルダー全体 (この例では /w1/) を http から https にリダイレクトしたいと思います。これをリダイレクトする方法: http://testdomain.com/system /w1/ (およびそのフォルダーのすべて) をこれに: https://testdomain.com/system /w1/ (およびそのフォルダーのすべて)。たとえば、http ://testdomain.com/system/w1/w1_input.phphttps://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 や書き換えの必要はありません。RedirectMatch を http.conf レベルの非 SSL ホスト定義に入れるだけです。

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

これらのルールが htaccess ファイルにある場合、書き換えエンジンを通過する前に先頭のスラッシュが URI から取り除かれるため、^/w1は何にも一致しません。ディレクトリのhtaccessファイルにこれらのルールがあるようです/system/

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 に答える