Foros del Web » Administración de Sistemas » Apache »

Duda con Mod rewrite (Url amigable)

Estas en el tema de Duda con Mod rewrite (Url amigable) en el foro de Apache en Foros del Web. Hola, antes que nada agradecer las posibles respuestas que tenga este post. Paso a comentar mi duda : He estado intentando aprender un poco de ...
  #1 (permalink)  
Antiguo 22/11/2011, 07:38
Avatar de Sr_Furia  
Fecha de Ingreso: abril-2009
Mensajes: 111
Antigüedad: 15 años, 1 mes
Puntos: 8
Duda con Mod rewrite (Url amigable)

Hola, antes que nada agradecer las posibles respuestas que tenga este post. Paso a comentar mi duda :

He estado intentando aprender un poco de Mod_rewrite para poder poner las URLS amigables, pero se me resiste, y es por eso que me paso por aqui :P

En mi servidor, tengo la URL :

sitio.com/ver-imagenes.php?num=1&id=1&nombre=Imagenes de animales

Y me gustaria que quedara :

sitio.com/imagenes-de-animales-1.html

Una de las cosas que he buscado, pero no he logrado averiguar como hacer, es como poder hacer para que la variable Imagenes de animales , que como imagenes-de-animales , es decir con los guiones entre medio de las palabras

Lo he intentado de varias maneras, pero no logro conseguirlo. Alguien me podría echar un cable con la RewriteRule que debo especificar en el .htaccess ?

Muchas gracias de antemano
  #2 (permalink)  
Antiguo 22/11/2011, 09:45
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 17 años, 6 meses
Puntos: 32
Respuesta: Duda con Mod rewrite (Url amigable)

Hola.

Lo podrías hacer escribiendo en la regla que tiene 3 guiones, pero que pasa si tiene mas o menos?

No es la forma correcta, te daría problemas y muchos quebraderos de cabeza... además estoy pensando que no sería posible luego recoger la variable.... lo suyo sería separar las variables con signos distintos, por ejemplo un guión bajo '_'

Saludos.
  #3 (permalink)  
Antiguo 22/11/2011, 18:38
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Duda con Mod rewrite (Url amigable)

Aqui hay dos cosas un poco confusas,
por un lado tu ejemplo tiene 3 variables, pregunto:

num e id van a ser siempre 1?

por el otro, el valor para nombre es "imagenes de animales", por que no sencillamente hacer que el valor sea "imagenes-de-animales" ?
Los restantes valores para nombre, también contienen espacios en blanco?
"imágenes de plantas", por ejemplo.

Cuando se trabaja con urls amigables, hay que tener en cuenta a estas como parte del conjunto que representa tu aplicación, variables/php/mysql (es lo más tradicional)

bueno, todo es cuestión de ver que hace la script que procesa esa información
en concreto, y como una referencia, las alternativas serían

si num e id son siempre 1

url original
http://sitio.com/ver-imagenes.php?nu...es-de-animales
url modrewrite
http://sitio.com/Imagenes-de-animales

la regla en .htaccess
Código Apache:
Ver original
  1. RewriteRule ^([^/]*)$ /ver-imagenes.php?num=1&id=1&nombre=$1 [L]
y que tu php haga un reemplazo en la variable nombre de los guiones por espacios en blancos previo a su uso

la otra alternativa, si num e id tambien varían (que suena más logico)
original:
http://sitio.com/ver-imagenes.php?nu...es-de-animales
con modrewrite
http://sitio.com/1/1/Imagenes-de-animales
y .htaccess

Código Apache:
Ver original
  1. RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ /ver-imagenes.php?num=$1&id=$2&nombre=$3 [L]

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: html, imagenes, mod, rewrite, url, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:19.