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

Modificar links con htaccess

Estas en el tema de Modificar links con htaccess en el foro de Apache en Foros del Web. Hola, como verán, este es mi primer post en la comunidad, se que seguramente me regañen por ya empezar a preguntar cosas en mi primer ...
  #1 (permalink)  
Antiguo 30/09/2011, 04:34
Avatar de hellboy_of_darkness  
Fecha de Ingreso: septiembre-2011
Mensajes: 4
Antigüedad: 12 años, 7 meses
Puntos: 0
Pregunta Modificar links con htaccess

Hola, como verán, este es mi primer post en la comunidad, se que seguramente me regañen por ya empezar a preguntar cosas en mi primer post, en lugar de hacer un primer por presentándome, pero lo que pasa es que estoy un tanto desesperado con el siguiente tema y quisiera saber si me pueden ayudar.

Resulta que tengo el siguiente .htaccess


Código:
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

## Evitar que se liste el contenido de los directorios
Options All -Indexes
## Lo mismo que lo anterior
IndexIgnore *

DirectoryIndex inc/php/home.php

RewriteRule ^buscar/$ inc/php/buscar.php?a=1 [L,NC,QSA]
RewriteRule ^letra/([A-Za-z0-9_-]+).html$ inc/php/buscar.php?q=$1&a=2 [L,NC,QSA]
RewriteRule ^categoria/([A-Za-z0-9_-]+)/$ inc/php/buscar.php?q=$1&a=3 [L,NC,QSA]
RewriteRule ^pelicula/([0-9]+)/([A-Za-z0-9_-]+).html$ inc/php/ver.php?id=$1 [L,NC,QSA]
RewriteRule ^page/([A-Za-z0-9_-]+).html$ inc/php/page.php?id=$1 [L,NC,QSA]
RewriteRule ^login/$ inc/php/login.php [L,NC,QSA]
RewriteRule ^logout/$ inc/php/login.php?a=logout [L,NC,QSA]
RewriteRule ^admin/$ inc/php/admin.php [L,NC,QSA]
Y el siguiente Link.

Código:
<a href="{$msConfig.datos.w_url}/pelicula/{$m.p_id}/{$m.p_seo}.html" title="{$m.p_titulo|escape}"><img src="{$msConfig.datos.w_url}/files/uploads/{$m.p_id}.jpg" alt="{$m.p_titulo|escape}" /></a>
Esto hace que yo tenga como resultado un links así.

www.miweb.com/peliculas/1/amor-imposible.html

Pero a mí me gustaría que el link se vea así.

www.miweb.com/peliculas/amor-imposible.html

Ósea, sacar el ID del link, y que solo se vea /películas/ y el nombre.

En el link que deje más arriba, {$m.p_id} viene a ser el ID /1/ que se ve en

www.miweb.com/peliculas/1/amor-imposible.html

Y {$m.p_seo} el nombre amor-imposible


Alguien podría darme una mano diciéndome que modificar en el htaccess y en el link para poder obtener un link como el que deseo?

Desde ya agradezco su ayuda.

Espero no haberme equivocado en donde postee esto, ya que lo postee aquí tras ver que varios post que hablan sobre los archivos htaccess fueron posteados acá.

Gracias de antemano.
  #2 (permalink)  
Antiguo 30/09/2011, 21:45
Avatar de hellboy_of_darkness  
Fecha de Ingreso: septiembre-2011
Mensajes: 4
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Modificar links con htaccess

Sé que me van a llamar la atención por auto responder a mi post, pero... se me hace raro que en este foro nadie haya respondido en todo un día, hice algo mal? es como un derecho de piso que hay que ganar y no se le responde a usuarios que recién se registran, paso algo?

O solo es que nadie sabe algún método para ayudarme? vuelvo a disculparme por auto responder a mi post pero me parece que esto va a quedar en soledad.
  #3 (permalink)  
Antiguo 02/10/2011, 13:17
Avatar de hellboy_of_darkness  
Fecha de Ingreso: septiembre-2011
Mensajes: 4
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Modificar links con htaccess

si definitivamente me equivoque con este foro, gracias por nada gente, saludos.
  #4 (permalink)  
Antiguo 03/10/2011, 15:05
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: Modificar links con htaccess

Mientras leía el primer post (el cual acabo de leer ahora, es decir, recién hoy, y enfatizo, no puedo estar las 24 hhs del día pendiente del foro...), estaba elaborando una respuesta en mi cabeza para contestarte...
Cuando leí el segundo, empecé a dudar el responderte...
Tras leer el tercero, sí definitivamente, te equivcaste de foro


__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #5 (permalink)  
Antiguo 05/10/2011, 03:28
Avatar de hellboy_of_darkness  
Fecha de Ingreso: septiembre-2011
Mensajes: 4
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Modificar links con htaccess

Cita:
Iniciado por emprear Ver Mensaje
Mientras leía el primer post (el cual acabo de leer ahora, es decir, recién hoy, y enfatizo, no puedo estar las 24 hhs del día pendiente del foro...), estaba elaborando una respuesta en mi cabeza para contestarte...
Cuando leí el segundo, empecé a dudar el responderte...
Tras leer el tercero, sí definitivamente, te equivcaste de foro


Abría preferido que no respondas directamente, parece una burla tu comentario, quizás peque de apurado, es que no tenía la imagen de que en este foro se pueda llegar a tardar 3 días en formular una respuesta, disculpe y no pretendo que este las 24 Hs del día en el foro
  #6 (permalink)  
Antiguo 05/10/2011, 10:31
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: Modificar links con htaccess

Burlarme, no de ninguna manera, lo dije en serio.
Disculpas aceptadas,
Ahora un posible respuesta:

Primero, acomodá tu .htaccess (el All y el index ignore estan demás)

Código Apache:
Ver original
  1. Options -Indexes +FollowSymLinks
  2. DirectoryIndex inc/php/home.php
  3.  
  4. # Ahora las url amigables
  5. RewriteEngine On
  6. RewriteCond %{REQUEST_FILENAME} !-f
  7. RewriteCond %{REQUEST_FILENAME} !-d
  8. .......
  9. .......

Analicemos lo siguiente, la url amigable no hace más que pasarle valores a tu ver.php, en reemplazo de la query_string ?variable1=valor&amp;variable2=valor

Tu ejemplo resulta un poco confuso porque en ningúna parte veo que pases el nombre de la película como argumento, así que voy a usar este ejemplo.

Doy por supuesto que todo lo estás extrayendo de una BD.

En tu tabla de datos tendrás entonces una una columna id y otra columna nombre, y aquí está un poco el centro de la cuestión, lo más seguro es que tu id sea un valor unico para cada registro, pero la columna "nombre" (de la pelicula), también lo es?, lo lógico debiera ser que sí, si nó, ante la eventualidad de dos películas con el mismo nombre, no podrías usarlo para recuperar el regitsro que quieras mostrar de manera segura. Si hiciste lo lógico, entonces ya no necesitarías el id.

Con esta regla te bastaría
http://miweb.com/peliculas/mision-imposible
equivaldria a
http://miweb.com/ver.php?nombre=mision-imposible
y en el .htaccess

Código Apache:
Ver original
  1. RewriteRule ^peliculas/([^/]*)$ /ver.php?nombre=$1 [L]

como ves, todo depende de como este estructurada la tabla

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

Etiquetas: htaccess, html, links, modificar
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 10:27.