11

ドメイン全体に https を強制したい "/docs" というディレクトリが 1 つあります。/docs フォルダーには、次の htaccess ファイルがあります。

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

これにより、/docs ディレクトリ内のすべてに https が強制されます。これは、私がやりたいことです。私が抱えている問題は、サイトの他のすべての領域で REMOVE https を強制的に http に戻そうとしていることです。(wordpress を実行している) サイトのルート フォルダーに、次の htaccess ファイルがあります。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_URI} !^/docs/?.*$
RewriteRule ^(.*)$ http://www.mydomain.com/$1 [R=301,L]

残念ながら、これは機能していません。https 経由でサイトの他の領域に引き続きアクセスできます。

これを正しく機能させるには、何を変更する必要がありますか?

4

4 に答える 4

26

受け入れられた回答は実際には質問に回答していないため、これに対する解決策を投稿することにしました。これをファイルに追加して.htaccess、HTTPS の代わりに HTTP を強制します。

# BEGIN Force HTTP
RewriteEngine On
RewriteCond %{SERVER_PORT} 443
RewriteRule ^(.*)$ http://yourdomain.com/$1 [R=301,L]
# END Force HTTP
于 2016-07-31T23:15:46.857 に答える
1

WordPress 用の Force non-SSL プラグインを試してください。

于 2012-09-19T06:51:24.193 に答える
-17

なぜ http に戻す必要があるのですか? 適切な SSL 証明書があれば、アクセスを安全に保つこともできます。システムへの負荷が気になる場合を除きます。

これが質問に答えていないことはわかっていますが、質問は悪い習慣を行う方法について尋ねていることを強調したいと思います。これはそもそも行うべきではありません。

于 2012-04-27T18:38:11.367 に答える