Tengo un sitio de WordPress para el que deseo forzar que todas las páginas vayan a https y no a www.
Así que quiero seguir la redirección.
http://ejemplo.com --> https://ejemplo.com
www.ejemplo.com --> https://ejemplo.com
http://ejemplo.com/abcd --> https://ejemplo.com/abcd
www.ejemplo.com/abcd --> https://ejemplo.com/abcd
Tengo el siguiente código en mi archivo .htaccess
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteEngine On RewriteCond %{HTTPS} off [OR] RewriteCond %{HTTP_HOST} ^www\. [NC] RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC] RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301] RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPressEl problema es que solo redirige la página de inicio correctamente, para las páginas internas aparece un error de Página no encontrada/No se puede acceder al sitio.
Prueba esto:
RewriteCond %{HTTP_HOST} ^(www\.)(.+) [OR] RewriteCond %{HTTPS} off RewriteCond %{HTTP_HOST} ^(www\.)?(.+) RewriteRule ^ https://%2%{REQUEST_URI} [R=301,L]