Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Diseño web | Promoción web | Ganar dinero
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo

Ejemplo más complejo de RewriteRule


Vemos un segundo caso de redirección de URLs amigables a buscadores hacia URLs con paso de parámetros.


28/8/06 - En el anterior capítulo vimos como trasladar con RewriteRule parte de una URL estática a una URL con paso de parámetros. Para ello definíamos en el patrón una agrupación con (+.) y luego la utilizábamos con $1 en la URL redirigida con paso de parámetros. Ver el anterior artículo para más información.

En algunas ocasiones no basta con enviar un parámetro para que la página reciba todos los datos que necesita para mostrar los contenidos específicos.
Si en la expresión regular tuviéramos otros (+.) entonces en la url_destino tendríamos que utilizar $1 para el primer (+.) que haya en la expresión regular y $2 para el segundo, $3 para el tercero y así sucesivamente.

Por ejemplo, aquí podemos ver una sentencia RewriteRule que utiliza dos partes con (+.) para hacer el patrón.

RewriteRule ^agenda/(.+)/(.+)\.html codigo/cita.php?mes=$2&anio=$1

Esta expresión regular quiere decir: Cualquier URL que comience por "agenda/", seguida de cualquier cosa, luego una barra y cualquier otra cosa, acabado en ".html" (fijarse la contrabarra antes de ".html" que es un carácter de escape para indicar que el "." de antes de "html" es un punto, en lugar del codigo especial que suele significar cualquier caracter. Ver el artículo anterior para más explicaciones sobre las expresiones regulares de este estilo.

Como se puede ver, las direcciones estáticas amigables a buscadores no tienen por que finalizar en .php. En este caso finaliza en .html, pero podría acabar de cualquier otra forma, como .htm, .php3, .shtml o en un directorio.

En el caso del ejemplo anterior, una dirección con esta forma:

www.dominio.com/agenda/2006/7

Se hará corresponder con una url_destino así:

www.dominio.com/codigo/cita.php?mes=7&anio=2006

Aunque también podrían haber concordado otros modelos de direcciones como:

www.dominio.com/agenda/05/01
www.dominio.com/agenda/2006/marzo

Será nuestra responsabilidad hacer el tratamiento para que sólo las URL que queremos muestren la página correcta. Veremos en el proximo capítulo cómo hacer este tratamiento de posibles errores y cómo resolver otros posibles problemas del uso del htaccess.

 Seguir navegando a partir aquí:
+ 1 manual relacionado
+ 1 categoria relacionada
+ 1 comentario (Añadir)
+ 1 comentario no revisado

 Autoría, licencia y acciones sobre este artículo

Informe de Miguel Angel Alvarez*
Director de DesarrolloWeb.com

Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.

* Para consultas técnicas utilizar la lista de correo.

Versión imprimible Versión imprimible del artículo
Enviar artículo por e-mail Enviar artículo por e-mail
Añadir un comentario al artículo Publicar un comentario del artículo

Manuales relacionados con este artículo
Dentro de Editar htaccess para crear direcciones URL amigables

Categorias relacionadas
A través de las categorías de nuestro directorio se pueden encontrar otro tipo de recursos relacionados con este artículo:
+ Entrar en Apache


 Comentarios de los visitantes
Los comentarios de los visitantes son para ampliar la información del artículo. Cualquiera puede participar.
Se muestra un comentario revisado

 Comentario de Arturo
06/9/06 
Lo mismo estoy equivocado, pero me parece que de...
^agenda/(.+)/(.+)\.html
sobra...
\.html
si queréis que se corresponda con...
www.dominio.com/agenda/2006/7
que es lo propio en urls mejoradas.

Añadir un comentario al artículo Añadir un comentario del artículo
 Comentarios sin revisar
Entre los comentarios no revisados puede haber algunos interesantes que se hayan enviado recientemente.
 Se ha encontrado un comentario sin revisar

Ver el comentario no revisadoVer los comentarios no revisados
Añadir un comentario al artículo Añadir un comentario del artículo



Enlaces:
Maestrosdelweb
  Ir arriba

Manuales relacionados
+Editar htaccess para crear direcciones URL amigables
Categorías
+Apache

Lectura recomendada

Compra este libro en Agapea, la librería urgente a domicilio.

Tienda DesarrolloWeb

DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia