現在、サーバーはhttp://www.example.com/index.phpへのHTTPリクエストをHTTPSにリダイレクトします。
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{HTTPS} !on
RewriteCond %{REQUEST_URI} index.php$ [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
ただし、問題は、 http://www.example.comにリクエストが送信されたときに、リダイレクトが行われないことです。
{REQUEST_URI}が空の場合に、サーバーをHTTPSにリダイレクトするにはどうすればよいですか。(私はそれが空だと思います)
編集:
akostadinovの回答の後、これを含めるように.htaccessを変更し、書き換えが機能しました。後で誰かが同じ問題を抱えている場合に備えて、ここに投稿します!
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{HTTPS} !on
RewriteCond %{REQUEST_URI} /$ [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]