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

Consulta para error Rewrite Rule

Estas en el tema de Consulta para error Rewrite Rule en el foro de Apache en Foros del Web. Hola a todos estoy usando este rewrite rule para un sitio web. <ifmodule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([^/]+)/?([^/]+)/?([^/]+)?$ index.php?language=$1&page_url=$2&ref_id=$3 ...
  #1 (permalink)  
Antiguo 27/07/2010, 09:57
 
Fecha de Ingreso: octubre-2009
Mensajes: 5
Antigüedad: 15 años, 1 mes
Puntos: 0
Consulta para error Rewrite Rule

Hola a todos

estoy usando este rewrite rule para un sitio web.

<ifmodule mod_rewrite.c>
RewriteEngine On

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

RewriteRule ^([^/]+)/?([^/]+)/?([^/]+)?$ index.php?language=$1&page_url=$2&ref_id=$3 [L,QSA]

</ifmodule>

Donde una ruta de ejemplo seria: www.dominio.com/es/proyectos/ficha_proyecto
Otra seria: www.dominio.com/en/blog

Las 3 variables que recojo son idioma, seccion y id_articulo. Las dos ultimas son opcionales, si bien la primera (el idioma) siempre se pasa.

La rewrite_rule me funciona bien cuando tendo dos variables (idioma y seccion) o tres variables en la url (idioma, seccio e id).

Pero si solo paso una, como por ejemplo: www.dominio.com/es/
que serviria para ir a la home del idioma deseado, me pasa la variable mal.

El problema es que se come la ultima letra.

Es decir si paso estas rutas :

www.dominio.com/es/proyectos/proyecto1 las variables que me recoge son: $language="es" , $page_url="proyectos" , $ref_id="proyecto1" --> correcto

www.dominio.com/es/proyectos/ las variables que me recoge son: $language="es" y $page_url="proyectos" --> correcto

Si paso esta otra ruta:

www.dominio.com/es/ las variables que me recoge son: $language="e"

y si paso esta tambien :

www.dominio.com/es las variables que me recoge son: $language="e"

Es decir, borra la ultima letra de la primera variable.

Supongo que es un error en el htacces, por lo que necesitaria vuestra ayuda para resolverlo.

MuchasGracias!

Etiquetas: rewrite
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:26.