jueves, 7 de mayo de 2009

HTAccess: URL Amigables.

En el articulo anterior comentabamos sobre un script PHP para Crear URL amigables para crear url amigables a partir por ejemplo del título de una noticia. Esta conversión semántica, por ejemplo del título, puede ser usada como enlace y ayuda a los buscadores a indexar de una forma mas eficiente nuestros artículos.

Se debe tener en cuanta que Apache debe tener instalado el modulo "Rewrite":

LoadModule rewrite_module modules/mod_rewrite.so

Aquí mostramos un ejemplo de como realizar redirecciones tambien crear URL amigables o URL semánticas. Este código se incluye en el archivo (.htaccess):

Options FollowSymLinks

RewriteEngine On
RewriteBase /

Con esto hacemos que si da un error como pagina no encontrada (404), realizará una redirección hacia nuestra URL (http://localhost):

ErrorDocument 404 http://localhost
ErrorDocument 500 http://localhost
ErrorDocument 403 http://localhost
ErrorDocument 401 http://localhost

Anteriormente comentabamos sobre utilizar el titulo de una noticia de forma semántica, de esta manera obtenemos el nombre de la url y mediante PHP obtenemos la Noticia o Post a mostrar, por ejemplo seria (http://localhost/news/esto-es-una-prueba/), donde la via para obtener el segundo segmento de la URL mediante $2:

RewriteRule ^(news)/(.*)/$ /news.php?title=$2 [L,NC,QSA]

Tambien podemos definir otras url de forma semantica, por ejemplo:

RewriteRule ^(contactos)/$ /noticias.php [L,NC,QSA]

RewriteCond %{HTTP_HOST} !^localhost$ [NC]
RewriteRule ^(.*)$ http://localhost/$1 [R=301,L]

No hay comentarios: