このような質問をたくさん見つけて、ほとんどすべて試しましたが失敗しました。私の最新のコードは次のとおりです。
RewriteCond %{HTTPS} !^on$
RewriteCond %{REQUEST_URI} (/page_1|/page_2|/page_3|/page_3)$
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L]
これらのページ (page_1 - page_4) のみ http を https にリダイレクトしたい
最初はうまくいったようですが、 httpsでpage_1 に到達し、 https であってはならない他のリンク ( page_my_http_1 など) をクリックすると、そのページ ( page_my_http_1 ) のhttpsにもリダイレクトされます。
私も試しました:
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} (auth|register|secure)
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301]
RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_URI} !(auth|register|secure)
RewriteRule ^(.*)$ http://%{SERVER_NAME}%{REQUEST_URI} [R=301]
または、ブラウザで SSL 証明書がアクティブ化されていない場合に、ユーザーにカスタム メッセージを表示する方法はありますか?
実際、多くの技術者以外のユーザーは、ブラウザーがデフォルトの警告メッセージを表示するとショックを受けます。