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

Ayuda con rewriteCond

Estas en el tema de Ayuda con rewriteCond en el foro de Apache en Foros del Web. Tengo un problema que no he podido solucionar, pero primero necesito saber si es posible, tengo un archivo en el servidor 'unsupportedscanx.php', pero quiero usar ...
  #1 (permalink)  
Antiguo 22/06/2009, 07:35
Avatar de chidomen  
Fecha de Ingreso: enero-2005
Ubicación: aquí
Mensajes: 380
Antigüedad: 19 años, 3 meses
Puntos: 0
Pregunta Ayuda con rewriteCond

Tengo un problema que no he podido solucionar, pero primero necesito saber si es posible, tengo un archivo en el servidor 'unsupportedscanx.php', pero quiero usar una condición para que no importe si el usuario lo escribe con mayúsculas o en combinación con minúsculas, siempre llame al archivo unsupportedscanx.php

Tengo esta regla, pero no me esta funcionando:

rewriteCond ${lowercase:%{REQUEST_URI}} ^/unsupportedscanx\.php$
rewriteRule ^/%1 /unsupportedscanx\.php [R=301,L]


Que es lo que estoy haciendo mal?

Espero que me puedan ayudar
__________________
.. simplemente soy un mexicano apasionado ..
guasanericonsul.com
  #2 (permalink)  
Antiguo 22/06/2009, 07:52
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 2 meses
Puntos: 55
Respuesta: Ayuda con rewriteCond

Basta que añadas [NC] al final para indicar que no distinga mayúsculas y minúsculas:

Código:
rewriteCond ${%{REQUEST_URI}} ^/unsupportedscanx\.php$ [NC]
rewriteRule ^/%1 /unsupportedscanx\.php [R=301,L]
Nota que quité el lowercase, no sé si estará bien, revísalo...
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #3 (permalink)  
Antiguo 22/06/2009, 08:15
Avatar de chidomen  
Fecha de Ingreso: enero-2005
Ubicación: aquí
Mensajes: 380
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Ayuda con rewriteCond

Hola Ferny,

Gracias por contestar, pero sigo con el problema, en el explorador me aparece que no ha encontrado el archivo: 'Not Found',

rewriteCond ${%{REQUEST_URI}} ^/unsupportedscanx\.php$ [NC]
rewriteRule ^/%1 /unsupportedscanx.php [R=301,L]

Que estaré haciendo mal?

Saludos
__________________
.. simplemente soy un mexicano apasionado ..
guasanericonsul.com
  #4 (permalink)  
Antiguo 22/06/2009, 08:48
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 2 meses
Puntos: 55
Respuesta: Ayuda con rewriteCond

Ya habrás comprobado que el archivo unsupportedscanx.php existe en la ruta raíz de tu sitio web ¿no?

Mejor deja la regla así:

rewriteCond %{REQUEST_URI} ^/unsupportedscanx\.php$ [NC]
rewriteRule ^(.*)$ /unsupportedscanx.php [R=301,L]
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #5 (permalink)  
Antiguo 22/06/2009, 09:07
Avatar de chidomen  
Fecha de Ingreso: enero-2005
Ubicación: aquí
Mensajes: 380
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Ayuda con rewriteCond

Ferny,

Gracias, ya me funciono, sólo le agregue unos cambios pero esta funcionando

rewriteCond %{REQUEST_URI} ^(/unsupportedscanx.php)$ [NC]
rewriteRule ^(.*)$ /unsupportedscanx.php [R=301,L]

Si quisiera agregar otra condición para hacer exactamente lo mismo pero con otro archivo, puedo usar el mismo código o tendría que agregar algo diferente?

Muchas gracias por tu ayuda
__________________
.. simplemente soy un mexicano apasionado ..
guasanericonsul.com
  #6 (permalink)  
Antiguo 22/06/2009, 09:29
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 2 meses
Puntos: 55
Respuesta: Ayuda con rewriteCond

¿Esto?

rewriteCond %{REQUEST_URI} ^(/unsupportedscanx.php)$ [NC]
rewriteCond %{REQUEST_URI} ^(/otroarchivo.php)$ [NC]
rewriteRule ^(.*)$ /unsupportedscanx.php [R=301,L]

Es decir, si la url es distinta de unsupportedscanx.php y distinta de otroarchivo.php, entonces redirecciona... pero la redirección la hace siempre a la misma página.
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #7 (permalink)  
Antiguo 22/06/2009, 09:39
Avatar de chidomen  
Fecha de Ingreso: enero-2005
Ubicación: aquí
Mensajes: 380
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Ayuda con rewriteCond

Lo que intentaba hacer es hacer la regla para cada una, es decir, si la url es unsupportedscanx.php que lo envie a unsupportedscanx.php, si es otroarchivo.php lo direccione a otroarchivo.php.

Se puede hacer esto que comento?,
tener reglas para cada archivo?

Saludos
__________________
.. simplemente soy un mexicano apasionado ..
guasanericonsul.com
  #8 (permalink)  
Antiguo 22/06/2009, 09:57
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 2 meses
Puntos: 55
Respuesta: Ayuda con rewriteCond

Eso es lo mismo que decir:

- Si existe el archivo xxxx.php, me llevas a él
- Y si no existe, me redireccionas a yyyy.php (¿esto es lo que buscas?)

Entonces quedaría:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) yyyy.php
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #9 (permalink)  
Antiguo 22/06/2009, 10:08
Avatar de chidomen  
Fecha de Ingreso: enero-2005
Ubicación: aquí
Mensajes: 380
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Ayuda con rewriteCond

Hola,

Perdón si no me explique bien, imagina que tengo 3 archivos aaaa.php, bbbb.php y cccc.php, lo que quiero hacer es que si el usuario escribe el url con mayúsculas o minúsculas, lo convierta a minúsculas, es decir, AaAa.php -> aaaa.php, BbBb.php -> bbbb.php y CcCc.php -> cccc.php.

Lo que quiero hacer es hacer los mismo con lo que me habías ayudado anteriormente pero hacerlo para 3 diferentes archivos, independientes de cada uno.

Espero haberme dado a entender,

Saludos
__________________
.. simplemente soy un mexicano apasionado ..
guasanericonsul.com
  #10 (permalink)  
Antiguo 22/06/2009, 13:05
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 2 meses
Puntos: 55
Respuesta: Ayuda con rewriteCond

Ah, ok, entonces sólo tienes que repetir la regla tantas veces como sea necesario (si no son muchas, si no se pueden buscar alternativas)

rewriteCond %{REQUEST_URI} ^(/aaa.php)$ [NC]
rewriteRule ^(.*)$ /aaa.php [R=301,L]

rewriteCond %{REQUEST_URI} ^(/bbb.php)$ [NC]
rewriteRule ^(.*)$ /bbb.php [R=301,L]

rewriteCond %{REQUEST_URI} ^(/ccc.php)$ [NC]
rewriteRule ^(.*)$ /ccc.php [R=301,L]
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #11 (permalink)  
Antiguo 23/06/2009, 09:11
Avatar de chidomen  
Fecha de Ingreso: enero-2005
Ubicación: aquí
Mensajes: 380
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Ayuda con rewriteCond

Hola ferny,

Gracias por tu respuesta, no se que sucedió que en un principio funciono correctamente:
rewriteCond %{REQUEST_URI} ^(/unsupportedscanx.php)$ [NC]
rewriteRule ^(.*)$ /unsupportedscanx.php [R=301,L]

pero de repente dejo de funcionar, en firefox me aparece: 'Redirect Loop', por lo que entiendo es que esta en un ciclo y llama lo mismo muchas veces.

a que se debe este error?

Saludos
__________________
.. simplemente soy un mexicano apasionado ..
guasanericonsul.com
  #12 (permalink)  
Antiguo 23/06/2009, 09:40
Avatar de chidomen  
Fecha de Ingreso: enero-2005
Ubicación: aquí
Mensajes: 380
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Ayuda con rewriteCond

Hola ferny.

Ya pude solucionar el problema,
rewriteCond %{REQUEST_URI} ^(/unsupportedscanx.php)$ [NC]
rewriteRule ^(.*)$ /unsupportedscanx.php [L]

Tenia una regla como [R=301,L], redireccionaba y eso ocasionaba el problema,

Muchas gracias por tu ayuda, realmente me sirvió comprender un poco más sobre esto,

Saludos
__________________
.. simplemente soy un mexicano apasionado ..
guasanericonsul.com
  #13 (permalink)  
Antiguo 23/06/2009, 11:41
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 2 meses
Puntos: 55
Respuesta: Ayuda con rewriteCond

Cierto, en este caso sobra el 301, si no sucede la redirección infinita, menos mal que te diste cuenta
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
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.