特定のフォルダ(たとえば、「public_html/folder1」)のHTTPSに行くには、HTTP経由ですべての接続を強制しなければなりませんでした。私はどこかのチュートリアルを発見し、.htaccessファイルに次のように使用:例外を指定してHTTPからHTTPSに強制する方法はありますか?
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} folder
RewriteRule ^(.*)$ https://www.yourdomain.com/folder/$1 [R,L]
問題は、どのように私は作るのですか、私はHTTPだけでなく、HTTPSを介してアクセスすることを許可すべきことであるが、folder1の内部のフォルダを持っている、です例外? (つまり、私は、例えばfolder1/subfolder1にHTTP経由でアクセスすることを許可したい)。
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} ^/folder/((?!subfolder).*)$
RewriteRule ^(.*)$ https://www.yourdomain.com/folder/$1 [R,L]
リクエストURI文字列/folder/.*
に一致する文字列がそうルールが適用されていない/folder/subfolder/.*
あるとき、それは一致doesntの^/folder/((?!subfolde).*)
パターン:
おかげ
なぜすべてを強制的にhttpsしないのか聞かれますか?より安全で、ドメインのHSTSをアクティブにすることができます。これは、中間者攻撃に対する唯一の防御です。 – Tom