A la hora de estructurar nuestra página web uno de los aspectos interesantes a tener en cuenta es buscar que nuestros enlaces a los diferentes contenidos de nuestro website sean fáciles de recordar, fáciles de interpretar y, sobre todo, que sean “amigables” al ojo humano, por decirlo de algún modo. No es lo mismo una dirección del tipo “www.mipaginaweb.com/contacta-con-migo.php” que, por ejemplo, una que sea “www.mipaginaweb.com/contacto“. La brevedad y ser conciso en lo que decimos es algo que agradece cualquier visitante.

Gracias a .htaccess podremos lograr este cometido ocultando nuestras extensiones .php/.html de nuestros archivos dentro del servidor.De este modo, no será necesario introducir la ruta completa y será accesible tanto CON como SIN extensión.

Para lograrlo, simplemente, debemos agregar este pequeño código en nuestro fichero .htaccess para eliminar las extensiones php (si no existe debemos crear uno, de nombre ‘.htaccess’, y situarlo en el directorio raiz de nuestro servidor). En caso de las extensiones .html utilizaremos el mismo código cambiando .php por .html.

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php

Como se deduce de la instrucción “RewriteEngine on”, es necesario tener activado el módulo “mod_rewrite” en nuestro servidor. Por defecto viene ya instalado en la mayoría de distribuciones Apache pero hay casos, sobre todo en hostings baratos y pequeños (tipo 1and1), donde no es posible activarlo.

La alternativa para este tipo de hosting en concreto y posiblemente para otros muchos es reescribir los ficheros de nuestro servidor SUPRIMIENDO manualmente su extensión y gracias a .htaccess que éste los interprete como .php (para .html no es necesario) . En este caso particular (1and1) el código a utilizar por página es el siguiente (siendo “contacto” el nombre de nuestro fichero).

<Files contacto>
ForceType x-mapp-php5
</Files>

Para websites relativamente pequeños esta solución puede ser muy útil pero nefasta si disponemos de muchos archivos en nuestro servidor. Por eso, antes de decidir cual será nuestro plan de hosting para nuestra web, debemos fijarnos en si sus prestaciones se adecuan a nuestros intereses y ésta puede ser una de ellas.