Hola amig@s,
Tengo un problema con un .htaccess, lo que pretendo es ocultar la extensión del archivo (en este caso .php) por hacerla más corta y fácil de cambiar si fuera el caso, pero además, pretendo redirigir si acceden sin www, al dominio con www, el código que tengo es el siguiente:
Código .htaccess:
Ver originalRewriteEngine on
#Quitar extensión .php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
#Forzar a que siempre se incluya www al acceder al sitio
RewriteCond %{HTTP_HOST} ^dominio\.com$ [NC]
RewriteRule ^(.*)/?$ http://www.dominio.com/$1 [L,R=301]
#Aquí tengo la gestión de las páginas de error pero no lo pongo que ocupa mucho.
El problema está en que, si accedes sin www, añade la extensión al archivo además de las www, así:
dominio.com/pagina redirige a
www.dominio.com/pagina.php
Lo que debería hacer es:
dominio.com/pagina redirige a
www.dominio.com/pagina
Agradecería mucho si alguien me pudiera echar un cable explicándome qué error tengo y cómo resolverlo.
Añado que no consigo acabar de aclararme con los .htaccess, me voy defendiendo pero no termino de entenderlos, más que nada también por las expresiones regulares que por más que las estudio, no acabo de entenderlas.
Ya sé que hay varios post aquí sobre las expresiones regulares y os aseguro que los he leído y releído un montón de veces, pero debe de ser que tengo la cabeza muy dura...
Bueno, espero que alguien me pueda echar un cable.
Muchas gracias por adelantado.