Foros del Web » Administración de Sistemas » Software para Servers »

Conflicto entre dos reglas .htaccess que no me dejan ver un directorio

Estas en el tema de Conflicto entre dos reglas .htaccess que no me dejan ver un directorio en el foro de Software para Servers en Foros del Web. Hola a todos, Esribiendo aqui para ver si alguien me ayuda a finalizar unas URLs amigables que desde hace 4 semanas estoy tratando de terminar: ...
  #1 (permalink)  
Antiguo 08/04/2010, 11:26
Avatar de saymon  
Fecha de Ingreso: septiembre-2003
Ubicación: Panama
Mensajes: 318
Antigüedad: 21 años, 2 meses
Puntos: 0
Conflicto entre dos reglas .htaccess que no me dejan ver un directorio

Hola a todos,

Esribiendo aqui para ver si alguien me ayuda a finalizar unas URLs amigables que desde hace 4 semanas estoy tratando de terminar:

Yo tengo estas dos reglas en mi archivo .htaccess:

Código Apache:
Ver original
  1. RewriteRule ^profiles/(.+)/$ /profiles/$1 [R=301,L]
  2. RewriteRule ^profiles/(.+)$ users/userinfo.php?user=$1 [L]

Ellas lo que me hacen es lo siguiente:

La primera es para cuando los usuarios ingresen a un perfil de este modo
www.url.com/profiles/carlos/ lo redirijan a este URL www.url.com/profiles/carlos (sin el / al final)
La segunda hace que al solicitar el URL www.url.com/profiles/carlos sea procesado en la direccions www.url.com/users/userinfo.php?user=carlos
Todo me funciona PERFECTO, como quiero, pero el problema esta en que cuando entro a este URL www.url.com/profiles/ la pagina no me sale (en ese path tengo un index.php) y me toma ese URL como si lo estubiera procesando en "www.url.com/users/userinfo.php?user="
Ah, y cuando quito la primera linea si me sale el URL www.url.com/profiles/ bien, pero esta linea la necesito para que me redirecciones las URLs terminadas en / a la misma URLs sin ella (el /)

Alguna ayuda por favor, ya no tego ni idea como lograr esto, y he leido en estas 4 semanas cantidades de documentos, pero ninguno que funciona.

saludos
  #2 (permalink)  
Antiguo 11/04/2010, 11:43
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: Conflicto entre dos reglas .htaccess que no me dejan ver un directorio

Parece que el ejemplo que te di, no lo analizaste bien. Existe una expresion con el simbolo ? que indica que la el caracter que está antes puede ser opcional, o sea 0 ó 1 veces se puede mostrar. Te recomiendo que leas un manual de expresiones regulares. Y también usa RewriteCond para que condiciones los patrones.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 11/04/2010, 14:38
Avatar de saymon  
Fecha de Ingreso: septiembre-2003
Ubicación: Panama
Mensajes: 318
Antigüedad: 21 años, 2 meses
Puntos: 0
Respuesta: Conflicto entre dos reglas .htaccess que no me dejan ver un directorio

Cita:
Iniciado por abimaelrc Ver Mensaje
Parece que el ejemplo que te di, no lo analizaste bien. Existe una expresion con el simbolo ? que indica que la el caracter que está antes puede ser opcional, o sea 0 ó 1 veces se puede mostrar. Te recomiendo que leas un manual de expresiones regulares. Y también usa RewriteCond para que condiciones los patrones.

Si al inicio estaba utilizandonde el ejemplo que me diste y funcionaba perfecto

Código Apache:
Ver original
  1. RewriteRule ^profiles/(.*[^/])/?$ users/userinfo.php?user=$1 [L,QSA]

El detalle aqui estaba en que me abria finalizando en / o no lo que puede ser no muy beneficioso para el SEO de la pagina, por esto es que por ete medio si termina en / lo que hace primero es redireccionarlo a la misma pagina sin el / para luego con la otra regla procesarla en la pagina correspondiente,

Lo que no entiendo y no logro encontrar es porque no me funciona el root de esa carpeta

www.url.com/profiles/

Etiquetas: conflicto, directorio, dos, htaccess, reglas, ver, servidores
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:40.