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

Problema con rewriterule

Estas en el tema de Problema con rewriterule en el foro de Apache en Foros del Web. Hola buenas, Estoy modificando mi web para poder posicionarla mejor. Ahora mismo estoy cambiando lo de la url para que sea amigable y no me ...
  #1 (permalink)  
Antiguo 07/01/2010, 10:00
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 17 años, 3 meses
Puntos: 1
Problema con rewriterule

Hola buenas,

Estoy modificando mi web para poder posicionarla mejor.
Ahora mismo estoy cambiando lo de la url para que sea amigable y no me funciona y no entiendo el motivo.

La url que actualmente quiero modificar es la siguiente:
http://www.midominio.com/listacursos.php?curso=2&title=curso-algo
y quiero que aparezca:
http://www.midominio.com/listacursos/2/curso-algo

He buscado por todos lados y no consigo solucionarlo, os pongo lo que he puesto:
En .htaccess:
RewriteEngine on
Rewriterule ^listacursos/(.+)/(.+) listacursos.php?curso=$1&title=$2

y el código del botón que llama he puesto:
Código HTML:
<a href="http://www.midominio.com/listacursos/<?php echo $rowCateg["idcategoria"];?>/<?php echo urls_amigables($rowCateg["categoria"]);?>"><?php echo $rowCateg["categoria"];?></a> 
Esto me muestra en la barra de direcciones lo que quiero que muestre pero me pone archivo no encontrado.

¿Alguien sabe cómo puedo solucionarlo?

Un saludo y gracias

Última edición por Daniel Ulczyk; 07/01/2010 a las 10:52 Razón: se remueve link de URL de ejemplo (error 404)
  #2 (permalink)  
Antiguo 07/01/2010, 10:54
Avatar de Daniel Ulczyk
Super Moderador
 
Fecha de Ingreso: febrero-2005
Ubicación: Buenos Aires
Mensajes: 9.264
Antigüedad: 19 años, 9 meses
Puntos: 2114
Respuesta: Problema con rewriterule

Aunque la finalidad sea obtener un mejor posicionamiento orgánico, entiendo que la solución del problema más tiene que ver con el conocimiento técnico de rewriterule

Movido desde el foro de Posicionamiento SEO
__________________
—Somos lo que hacemos repetidamente. La excelencia, entonces, no es un acto sino un hábito. (Aristóteles dixit)
  #3 (permalink)  
Antiguo 07/01/2010, 11:21
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 8 meses
Puntos: 839
Respuesta: Problema con rewriterule

¿Seguro que mod_rewrite está activo y que la directiva AllowOverride está configurada correctamente para que reconozca el contenido del archivo .htaccess?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #4 (permalink)  
Antiguo 08/01/2010, 04:43
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: Problema con rewriterule

Pues la verdad que no lo sé.
¿Dónde y cómo puedo mirarlo?
Saludos y gracias
  #5 (permalink)  
Antiguo 08/01/2010, 08:27
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 8 meses
Puntos: 839
Respuesta: Problema con rewriterule

Ambas configuraciones las puedes encontrar en tu archivo de configuración (httpd.conf),
Código Apache:
Ver original
  1. LoadModule rewrite_module .../mod_rewrite.so
Y, la directiva AllowOverride también puedes buscar en ese archivo, o directamente escribir algún comando no válido en el .htaccess, así, si el servidor revisa ese archivo debería producir un error.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #6 (permalink)  
Antiguo 08/01/2010, 09:52
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: Problema con rewriterule

Sí pongo algo mal en el .htaccess sí me da error.

Al httpd_conf no puedo acceder.

El dominio lo tenemos con 1and1 y como había leido cosas de modificar algo de la configuración he llamado esta mañana y me han dicho que me tenía que crear en la carpeta un archivo php.ini y ponerle allow_url_fopen = on
Esa instrucción no la he visto en ningún lado, pero me han dicho que eso era para las url amigables...

Pues entonces me lo he creado, y tengo el archivo php.ini con la instrucción anterior, un archivo .htaccess en esta misma carpeta con las siguientes líneas:
Código:
RewriteEngine on
Rewriterule ^/listacursos2/(.+)/(.+) /listacursos2.php?curso=$1&title=$2
No sé si es que algo está mal escrito, si me falta algo....he probado de todo, pero no hay manera

Un saludo
  #7 (permalink)  
Antiguo 08/01/2010, 10:00
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 8 meses
Puntos: 839
Respuesta: Problema con rewriterule

La directiva allow_url_fopen no tiene que ver con mod_rewrite.

Lo que sí está mal es que no debes colocar esa barra / al inicio. Debe ser:
Código Apache:
Ver original
  1. RewriteRule ^listacursos2/...
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #8 (permalink)  
Antiguo 08/01/2010, 10:10
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: Problema con rewriterule

La barra la puse por probar, como no me iba lo otro...
Entonces con el mod rewrite qué tengo que hacer?
Qué pongo?
lo que puse antes es todo lo que tengo puesto (bueno ya he quitado la barra) y sigue mostrándome página no encontrada...
  #9 (permalink)  
Antiguo 13/01/2010, 06:17
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: Problema con rewriterule

Buenas de nuevo,

ya me funciona, ya no me da el error 404 página no encontrada.

Juraría que lo que he puesto ya lo había puesto anteriormente...pero bueno. Os lo pongo por si a alguien le sirve.

Código:
RewriteEngine on
RewriteBase /
RewriteRule ^Cursos/([0-9]*)/(.+)?$ listacursos.php?curso=$1&nombrecurso=$2 [NC,L]
Ahora tengo otro problema, no me reconoce las hojas de estilo, ¿Alguien sabe cómo puedo solucionarlo?

Saludos y gracias
  #10 (permalink)  
Antiguo 13/01/2010, 18:58
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 8 meses
Puntos: 839
Respuesta: Problema con rewriterule

Debes usar rutas absolutas o en todo caso, usar la etiqueta <base /> para indicar qué punto de referencia tomar para calcular las rutas relativas.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #11 (permalink)  
Antiguo 14/01/2010, 05:04
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: Problema con rewriterule

ok gracias, ya he usado las direcciones absolutas y funciona correctamente.

Saludos1!!

Etiquetas: rewriterule
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 20:39.