Я думаю, что вы должны иметь только RewriteCond %{HTTP_HOST} .*example.com$
, без каких-либо ^
.
Это должно охватывать как вашу первую, так и вторую строки HTTP_HOST.
Третья строка HTTP_HOST, с которой у вас есть /index.php
, плохая, так как /index.php
никогда не является частью HTTP_HOST.
Также не повторяйте RewriteEngine On
и не нужно устанавливать условие для порта 80. (Если у вас есть HTTPS на порту 443, вы все еще хотите это перенаправление, верно?)
Итак, в конце концов:
RewriteEngine On
RewriteCond %{HTTP_HOST} .*example\.com$
RewriteRule ^(.*)$ https://example.com/$1 [R,L]