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

mod_rewrite: detectar y redireccionar segun url

Estas en el tema de mod_rewrite: detectar y redireccionar segun url en el foro de Apache en Foros del Web. Estimados, Tengo unas cuantas dudas que ojala puedan ayudarme a resolver. Desde ya muchas gracias. Tengo un sitio con bastantes paginas, todas son nombre-pagina.php, no ...
  #1 (permalink)  
Antiguo 22/04/2009, 03:16
Avatar de CHILENOCES  
Fecha de Ingreso: octubre-2001
Ubicación: Mmm paseando por la vida
Mensajes: 491
Antigüedad: 23 años
Puntos: 0
Pregunta mod_rewrite: detectar y redireccionar segun url

Estimados,
Tengo unas cuantas dudas que ojala puedan ayudarme a resolver. Desde ya muchas gracias.

Tengo un sitio con bastantes paginas, todas son nombre-pagina.php, no utilizan variables en la url.

Lo que necesito hacer es renombrarlas a urls amigables como ya saben /nombre-pagina/ en vez de /nombre-pagina.php sin embargo he probado bastantes codigos que he encontrado aqui en el foro pero no me resulta bien.

Aqui el codigo utilizado (gracias a David):
Código:
ReWriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)$ $1.php [L]
Si ingreso la url con "/" al final, no reconoce la pagina. Y sin "/" al final de la url si la reconoce.

Entonces mis 2 preguntas son:
1.- Como hacer para que tambien reconozca la url si esta contiene "/" al final. Ej: www.dominio.com/nombre-pagina/

2.- Como se puede redireccionar automaticamente al usuario si es que este ingresa a la url www.dominio.com/nombre-pagina.php, enviarlo automaticamente a www.dominio.com/nombre-pagina/ Es posible con el mismo mod_rewrite o hay que hacerlo con PHP?

Eso es todo, espero puedan ayudarme, y nuevamente muchas gracias.

Saludos.
__________________
ChilenoCesar Looking for something new...
  #2 (permalink)  
Antiguo 22/04/2009, 03:28
Avatar de CHILENOCES  
Fecha de Ingreso: octubre-2001
Ubicación: Mmm paseando por la vida
Mensajes: 491
Antigüedad: 23 años
Puntos: 0
Respuesta: mod_rewrite: detectar y redireccionar segun url

Ok, he solucionado la pregunta #1, quedando el codigo de la siguiente manera:

Código .htaccess:
Ver original
  1. ReWriteEngine On
  2. RewriteCond %{REQUEST_FILENAME} !-f
  3. RewriteRule ^([^/]+)$ $1.php [L]
  4. RewriteRule ^([^/]+)/$ $1.php [L]

La pregunta 2 aun no encuentro solucion.

Pero ahora nace una tercera pregunta! :
Ahora si ingreso a dominio.com/pagina o dominio.com/pagina/ funciona bien sin ningun problema, sin embargo si ingreso una url que no existe, ej: dominio.com/no-existe/ me arroja un Error 500 y no 404, como se puede solucionar eso?

Muchas gracias!
__________________
ChilenoCesar Looking for something new...
  #3 (permalink)  
Antiguo 22/04/2009, 03:49
Avatar de CHILENOCES  
Fecha de Ingreso: octubre-2001
Ubicación: Mmm paseando por la vida
Mensajes: 491
Antigüedad: 23 años
Puntos: 0
Respuesta: mod_rewrite: detectar y redireccionar segun url

Tercera pregunta solucionada!
Gracias a alvlin http://www.forosdelweb.com/f58/htacc...-404-a-525016/

El codigo esta de la siguiente manera hasta ahora:

Código .htaccess:
Ver original
  1. RewriteEngine On
  2. RewriteCond %{REQUEST_FILENAME}     !-f
  3. RewriteCond %{REQUEST_FILENAME}     !-d
  4. RewriteCond %{SCRIPT_FILENAME}.php  -f
  5. RewriteRule ^([^/]+)$ $1.php [L]
  6. RewriteRule ^([^/]+)/$ $1.php [L]

Entonces ahora solamente falta resolver la pregunta #2:
Cita:
2.- Como se puede redireccionar automaticamente al usuario si es que este ingresa a la url www.dominio.com/nombre-pagina.php, enviarlo automaticamente a www.dominio.com/nombre-pagina/ Es posible con el mismo mod_rewrite o hay que hacerlo con PHP?
Ojala puedan ayudarme con esa, las otras 2 ya las resolvi.

Gracias.
__________________
ChilenoCesar Looking for something new...
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 09:31.