(Direcciones Amigables) Oculta la extensión “.php” con .htaccess

Muchas veces al generar consultas en php en la barra de direcciones quedan lineas completamente inteligibles (por así llamarlo de alguna forma) repletas de signos de interrogación (?) y de igual (=) . Con este método conseguiremos transformar las URL para que parezca que nuestra página es estática (.html) en vez de dinámica. Queda mucho más estético ofrecer una página con la direccion “contenido-1.html” que “contenido.php?id=5“. Obviamente esto requiere una mayor carga del sistema ( servidor ) por lo que retrasará un poco el tiempo de generación .

¿ Qué necesitamos para ello ?
Es fundamental tener activado el módulo mod_rewrite y la opción FollowSymLinks de otra forma obtendríamos en la respuesta “500 Internal Sever Error”.

¿ Cómo conseguimos renombrar nuestras URL ?
Para crear estas direcciones amigables debemos crear un archivo .htacces en el directorio raíz y según el caso utilizar estas simples lineas de código:

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(.*)\.htm$ $1.php [nc]

En este caso cualquier dirección que termine en .PHP será renombrada a .HTML .

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^contenido-([0-9]+)\.html$ contenido.php?id=$1

Esta vez cualqueir página del tipo contenido?id=X será renombrada a contenido-X.html .

Una forma bastante sencilla de darle otro toque a las direcciones de nuestro servidor, en el caso de que no querramos ofrecer al usuario direcciones complejas.

Fuente | Roshan



4 Responses (Add Your Comment)

  1. y esto pa ke sirve ¿

  2. cesq, para que los buscadores te indexen mejor por ejemplo.
    Direccion amigable: Rabanomen_es_mi_amigo.com :-P .

  3. @cesq lo mismo que te ha dicho lalu , pero en el texto viene ‘ pa ke sirve’ , aplicación que quieras darle es cosa tuya

    @lalu :P

    A veces pienso que escribo para la pared xD

  4. RewriteRule ^(.*)\.htm$ $1.php [nc]

    “En este caso cualquier dirección que termine en .PHP será renombrada a .HTML ”

    Lo que yo leo en ese codigo es que cualquier direccion que acabe en .htm, hara una redireccion interna del servidor a la pagina .php de igual nombre (sin que lo sepa el visitante)

    El lado de la izquierda siempre es el request, y el de la derecha el target

Leave a Reply

Formatting: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>