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

Mod Rewrite ...

Estas en el tema de Mod Rewrite ... en el foro de Apache en Foros del Web. Hola, relacionado con el tema de reescribir urls yo me estoy encontrando con un problema al usar el mod_rewrite. Consigo que funcione si pongo: http://localhost/paginasphp/pruebas/articulo.php/10/2 ...
  #1 (permalink)  
Antiguo 19/03/2005, 19:06
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 22 años, 1 mes
Puntos: 1
Mod Rewrite ...

Hola, relacionado con el tema de reescribir urls yo me estoy encontrando con un problema al usar el mod_rewrite.
Consigo que funcione si pongo:
http://localhost/paginasphp/pruebas/articulo.php/10/2
pero no si pongo:
http://localhost/paginasphp/pruebas/articulo/10/2
He probado con el .htaccess:
<Files articulo>
ForceType application/x-httpd-php
</Files>
RewriteEngine on
RewriteRule ^/articulo/(.+)/(.+)$ /articulo.php?id=$1&pagina=$2
RewriteEngine off
pero no funciona. Da error 404
alguien sabe como hacer que funcione??
Salu2
__________________
Ing. Reynier Pérez Mira
  #2 (permalink)  
Antiguo 15/04/2005, 16:46
 
Fecha de Ingreso: abril-2005
Ubicación: Montevideo, Uruguay
Mensajes: 102
Antigüedad: 19 años, 8 meses
Puntos: 0
Varias cosas,

No entiendo el propósito de lo siguiente:

Código:
<Files articulo>
ForceType application/x-httpd-php
</Files>
Mejor dicho, está al santo botón.

El .htaccess tiene que estar dentro de /paginasphp/ , ¿está ahí?

Ojo que estás poniendo en la expresión regular /articulo y todas tus direcciones comienzan en realidad con /paginasphp/. Poné una línea

Código:
RewriteBase /paginasphp
y

escribí la reescritura así:
Código:
RewriteRule ^articulo/(.+)/(.+)$ /articulo.php?id=$1&pagina=$2
Si omitís el RewriteBase tendrías que escribir la línea así:

Código:
RewriteRule ^paginasphp/articulo/(.+)/(.+)$ /articulo.php?id=$1&pagina=$2
Otra cosa, no me gusta el (.+) porque sirve para reemplazar todos los caracteres y solo estás usando números. Mejor pone [0-9]+ en su lugar.


Saludos!
__________________
Mauricio Etcheverry

WebMaster de YoReparo.com
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:43.