Похоже, что перед этим задавались различные перестановки этого вопроса, но похоже, что все ответы имеют специфические особенности, которые не относятся к моей ситуации или просто не работают.Использование .htaccess для перенаправления http: //, http: // www. И https: // www. https: //
Итак, вот что я после ...
Я хотел бы эти три адреса:
... Все перенаправляются на:
С другой стороны, я попробовал это;
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase/
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule^https://%1%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTPS} off
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
Но, что не перенаправляет от https://www.example.com к https://example.com
Таким образом, результатом является сертификат предупреждение (поскольку мой сертификат действителен только для example.com, а не www.example.com).
Я также попытался это (от https://html5boilerplate.com/) ...
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule^%{ENV:PROTO}://%1%{REQUEST_URI} [R=301,L]
</IfModule>
... Но это не сработало:
- http://www.example.com был перенаправлен на https://www.example.com
- https://www.example.com не было перенаправлено
Than ks за вашу помощь.