URL REWRITING / REESCRITURA DE URL - SINTAXIS
Presentación
URL Rewriting
- Compatibilidad
del servidor - Sintaxis - Rewriting
avanzado
Rewriterule <secuencia a encontrar : patron> <cadena para sustituir : substitucion>
Recuerde que el MOD_REWRITE puede ser usado para muchas funcionalidades pero en nuestro ejemplo será usado para convertir páginas dinámicas en páginas web estáticas.
Caso práctico y ejemplo del URL Rewriting:
Revisando nuevamemente la dirección URL dinámica que pasa una variable http://www.dominiocualquiera.com/mipagina.html?mivariable=1 podría representarse como http://www.dominiocualquiera.com/mipagina/dir/1.html , http://www.dominiocualquiera.com/mipagina/dir/2.html... y asi sucesivamente dependiendo del valor que adquiera la variable.
Para
esto tendremos que poner en nuestro fichero .htacess la siguiente regla:
Options +FollowSymlinks RewriteEngine on Rewriterule ^mipagina/dir/(.*)\.html$ mipagina.html?mivariable=$1 [L] |
1-
Análisis de la parte 1 - Cadena a sustituir:
^mipagina/dir/(.*)\.html$
Esta es la cadena de salida (output), los caracteres ^ $ son el inicio y el fin de la cadena. mipagina/dir/ es la primer parte de la cadena de salida (string), (.*) representa cualquier carácter del texto. El \ backslash es el caracter de escape, se utiliza para cortar la sustitución del punto, en este caso, no indicará que el . es cualquier caracter, sino que es parte de la dirección .hml (nombre del file).
2
- Análisis de la parte 1 - Cadena a buscar
http://www.dominiocualquiera.com/mipagina.html?mivariable=$1
El URL Rewriting busca esta secuencia en cualquier dirección URL y mantiene el valor de la variable $1, que es pegada en el string de salida (.*), es decir, (.*) se sustituye por el valor de la variable.
El resultado final es una sustitución de caracteres especiales, tales como ? por otros mas fáciles de interpretar por los buscadores (search engines), obteniendo direcciones estáticas y pasando el valor de las variable a la vez, muy útiles en el lenguaje PHP. La dirección URL sustituida será: http://www.dominiocualquiera.com/mipagina/dir/1.html
3- URL Rewriting casos practicos:
Para que la URL http://www.dominiocualquiera.com/mipagina/dir/1.html = http://www.dominiocualquiera.com/mipagina.html?mivariable=$1
Tenemos de crear el fichero .htaccess y colocarlo en el directorio /dir/
donde estén nuestros ficheros que le vamos a aplicar las reglas:
Options +FollowSymlinks RewriteEngine on RewriteRule ^mipagina/dir/(.*)\.html$ mipagina.html?mivariable=$1 [L] |
Presentación URL Rewriting - Compatibilidad del servidor - Sintaxis - Rewriting avanzado
Foro url rewriting y .htaccess
Comentarios: (0)