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

¿Doble redirección en el .htaccess?

Estas en el tema de ¿Doble redirección en el .htaccess? en el foro de Apache en Foros del Web. Buenas tardes, Tengo la siguiente estructura de carpetas y archivos: Código: public_html/.htaccess public_html/index.php public_html/zzz/index.php public_html/zzz/pagina.php public_html/subzzz/index.php public_html/subzzz/subpagina.php Tengo el siguiente .htaccess: Código: RewriteEngine On RewriteCond ...
  #1 (permalink)  
Antiguo 27/06/2012, 10:54
Avatar de Ronin46  
Fecha de Ingreso: junio-2009
Mensajes: 398
Antigüedad: 13 años
Puntos: 8
¿Doble redirección en el .htaccess?

Buenas tardes,

Tengo la siguiente estructura de carpetas y archivos:
Código:
public_html/.htaccess
public_html/index.php
public_html/zzz/index.php
public_html/zzz/pagina.php
public_html/subzzz/index.php
public_html/subzzz/subpagina.php
Tengo el siguiente .htaccess:
Código:
RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\.dominio\.com$ [NC]
RewriteRule ^(.*)$ "http\:\/\/dominio\.com\/$1" [R=301,L]

RewriteCond %{REQUEST_URI} !^/zzz/
RewriteCond %{HTTP_HOST} !^www.
RewriteCond %{HTTP_HOST} ^(.+).dominio.com
RewriteRule .* /zzz%{REQUEST_URI}?s=%1 [QSA,L]
Y hago las siguientes pruebas con los siguientes resultados (verde OK, rojo No OK):
http://subdominio.domino.com/?a=b (funciona, me lleva a index.php dentro de zzz con dos variables $_GET)
http://subdominio.domino.com?a=b (funciona, me lleva a index.php dentro de zzz con dos variables $_GET)
http://subdominio.domino.com/ (funciona, me lleva a index.php dentro de zzz con 1 variable $_GET)
http://subdominio.domino.com (funciona, me lleva a index.php dentro de zzz con 1 variable $_GET)
http://subdominio.domino.com/pagina.php (funciona, me lleva a pagina.php dentro de zzz con 1 variable $_GET)
http://subdominio.domino.com/pagina.php?a=b (funciona, me lleva a pagina.php dentro de zzz con 2 variables $_GET)


http://subdominio.domino.com/subzzz (más o menos, me lleva a index.php dentro de zzz/subzzz con 1 variable pero sobreescribe la URL)
http://subdominio.domino.com/subzzz/ (funciona, me lleva a index.php dentro de zzz/subzzz con 1 variable)
http://subdominio.domino.com/subzzz?a=b (más o menos, me lleva a index.php dentro de zzz/subzzz con 2 variables pero sobreescribe la URL)
http://subdominio.domino.com/subzzz/?a=b (funciona, me lleva a index.php dentro de zzz/subzzz con 2 variables)

http://subdominio.domino.com/subzzz/subpagina.php (funciona, me lleva a subpagina.php dentro de zzz/subzzz con 1 variable)
http://subdominio.domino.com/subzzz/subpagina.php?a=b (funciona, me lleva a subpagina.php dentro de zzz/subzzz con 2 variables)


El problema está cuando intento acceder al subdirectorio de zzz y no entro con la barra ("/") final.

El resultado es el siguiente:
1. Entrando con URL http://subdominio.dominio.com/subzzz el navegador me muestra la URL http://subdominio.dominio.com/subzzz/?&s=subdominio y visualizando el array $_SERVER me encuentro con lo siguiente:
Código PHP:
[REDIRECT_QUERY_STRING] => s=subdominio&&s=subdominio
    
[REDIRECT_URL] => /subzzz/
    [
GATEWAY_INTERFACE] => CGI/1.1
    
[SERVER_PROTOCOL] => HTTP/1.1
    
[REQUEST_METHOD] => GET
    
[QUERY_STRING] => s=subdominio&&s=subdominio
    
[REQUEST_URI] => /subzzz/?&s=subdominio
    
[SCRIPT_NAME] => /zzz/subzzz/index.php
    
[PHP_SELF] => /zzz/subzzz/index.php 
1. Entrando con URL http://subdominio.dominio.com/subzzz?a=b el navegador me muestra la URL http://subdominio.dominio.com/subzzz/?s=subdominio&a=b y visualizando el array $_SERVER me encuentro con lo siguiente:
Código PHP:
[REDIRECT_QUERY_STRING] => s=subdominio&s=subdominio&a=b
    
[REDIRECT_URL] => /subzzz/
    [
GATEWAY_INTERFACE] => CGI/1.1
    
[SERVER_PROTOCOL] => HTTP/1.1
    
[REQUEST_METHOD] => GET
    
[QUERY_STRING] => s=subdominio&s=subdominio&a=b
    
[REQUEST_URI] => /subzzz/?s=subdominio&a=b
    
[SCRIPT_NAME] => /zzz/subzzz/index.php
    
[PHP_SELF] => /zzz/subzzz/index.php 
Creo que el problema está en algún tipo de redirección o algo, por lo de tener repetida la variable $_GET "s"

Gracias!
__________________
http://www.controldegastos.com, acepto sugerencias para el sitio.
Repetir conmingo: "tengo que dedicar más tiempo a gozar de placer"

Etiquetas: dominio, htacces, htaccess, php, rewrite, url, carpetas
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:57.