http から htpps に変更する方法を教えてください。私のドメイン名には SSL があります。以前はルートにファイル .htaccess を作成していましたが、まったく機能しません。
これが .htaccess のコードです
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://mysite.com/$1 [R=301,L]
助けてください、事前に感謝します。
http から htpps に変更する方法を教えてください。私のドメイン名には SSL があります。以前はルートにファイル .htaccess を作成していましたが、まったく機能しません。
これが .htaccess のコードです
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://mysite.com/$1 [R=301,L]
助けてください、事前に感謝します。
直接アクセスするには、次の方法が適しているようです。
RewriteEngine on
# rewrite to HTTPS
RewriteCond ${HTTPS} !on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
(ドキュメントに基づく: http://httpd.apache.org/docs/current/mod/mod_rewrite.html )
ただし、プロキシ (ロード バランサーなど) の背後にいる場合は、プロキシが送信するヘッダーを使用する必要があります。これに使用するコードは次のとおりです。
RewriteEngine on
# rewrite to HTTPS
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
それは私によく役立っており、かなり自明です。
もちろん、両方を組み合わせてより堅牢にすることもできますが、それがどのように使用されるかがわかっている実際の状況では、それはやり過ぎです。
RewriteEngine on
# rewrite to HTTPS
RewriteCond ${HTTPS} !on
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
このサイトによると(Google での最初の結果)
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
動作するはずです。