Comunidad de diseño web y desarrollo en internet online

Bucle de redireccionamiento, error .htaccess

Citar            
MensajeEscrito el 22 Oct 2014 08:54 pm
Buenas Tardes,

Necesito que me colaboren solucionando un tema que me tiene loco, lo he intentado por todos los lados y no lo he logrado.

Tengo una página alojada en un servidor que aún no tiene asignado el dominio, ya que se están haciendo pruebas antes para que cuando esté al 100% colocar las DNS correspondientes para que quede redireccionada con el dominio principal.

Con lo anterior, actualmente a la página se ingresa por el siguiente link: http://173.254.60.77/~cookieg1/

Ingresado a dicho link donde se despliega la página de inicio de la web, el usuario hace click en cualquier foto de cualquier producto para ver los detalles y sale el siguiente error:

"Esta página tiene un bucle de redireccionamiento"

Estuve averiguando por la web y al parecer el problema está en el .htaccess que estoy usando, pero en dicho archivo no sé cual es el error, ya que la página funciona en otros servidores.

El archivo .htaccess es el siguiente:

Código HTML :

# Use PHP5.4 Single php.ini as default
AddHandler application/x-httpd-php54 .php

RewriteEngine On

RewriteRule detalle-categoria-(.*)-(.*).html$ index.php/?sec=detalle-categoria&id=$1&p=$2 [L]

RewriteRule detalle-categoria-(.*).html$ index.php/?sec=detalle-categoria&id=$1 [L]

RewriteRule detalle-producto-(.*).html$ index.php/?sec=detalle-producto&id=$1 [L]

RewriteRule buscar.html$ index.php/?sec=detalle-categoria [L]

RewriteRule ^([^/]*)\.html$ index.php/?sec=$1 [L]


También confirmé la versión del PHP y está usando la 5.4 como se indica.

Por favor ayudenme!!!! se los agradezco mucho, es lo único que me falta para entregar el proyecto

De anteamno muchas gracias

Por maooricio

51 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 23 Oct 2014 08:17 pm
primero descarta si el problema es de por el htacces, quitalo temporalmente y prueba, segundo, estate seguro de la version de APACHE que estes usando,ya que lo que se usa en htaccess, depende de la version de apache

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 24 Oct 2014 03:41 pm
El problema es la última línea: contradice todas las reglas escritas anteriormente.

Saludos.

Por criscriscris

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 24 Oct 2014 07:01 pm
Comienza las reglas con ^ y la diagonal después de .php es innecesaria

[code]
RewriteRule ^detalle-categoria-(.*)/?$ index.php?sec=$1 [L]
[code]

Comenta todas y ve probando 1 por 1

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

chrome
Citar            
MensajeEscrito el 27 Oct 2014 04:18 pm
Buenas a todos, muchas gracias por las respuestas que recibí.

Apliqué la solución que me planteó "nasho" y en efecto el bucle de redireccionamiento ya se solucionó, pero aún no se redirecciona bien. Con esta solución de "nasho" pasa lo siguiente:

- Entro al link: http://173.254.60.77/~cookieg1/
- Hago click en cualquier link y me redirige a lo siguiente: http://173.254.60.77/~cookieg1/~cookieg1/empresa.html (si por ejemplo hago click en el botón "EMPRESA") y me debería redireccionar a http://173.254.60.77/~cookieg1/empresa.html para que me funcione.

Esto pasa con todos los links.

Por otro lado "criscriscris" me puedes explicar por favor cual es el problema con la última línea? en que sentido contradice a todas las reglas escritas anteriormente?. Te agradecería que me explicaras para ver si por fin puedo entregar mi proyecto.

Quedo muy pendiente a lo que me puedan ayudar. La verdad he intentado por todos los lados y no he encontrado la respuesta.

De antemano muchas gracias

Por maooricio

51 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 27 Oct 2014 04:25 pm
La última línea que sea:

Código PHP :

RewriteRule ^(.*).html$ index.php/?sec=$1 [L]

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

chrome
Citar            
MensajeEscrito el 27 Oct 2014 06:42 pm
"nasho" gracias por tu respuesta, hice lo que me dijiste, pero vuelve y genera un bucle de redireccionamiento.

Tienes alguna otra luz que me pueda ayudar a solucionarlo?

De antemano muchas gracias

Por maooricio

51 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 27 Oct 2014 07:07 pm
En el PHP tienes algún redireccionamiento??

Si comentas esa línea, funcionan bien las otras llamadas?

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

chrome
Citar            
MensajeEscrito el 27 Oct 2014 07:20 pm
Hola "nasho" muchas gracias.

- A que tipo de redireccionamiento te refieres?
- Si comento esa línea igual no funcionan las otras llamadas.

De antemano muchas gracias

Por maooricio

51 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 27 Oct 2014 09:29 pm
"nasho" o alguien que me pueda ayudar por favor... pido auxilio!!! :( :shock: :shock:

Por maooricio

51 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 27 Oct 2014 09:50 pm
pega tu código php con el que recoges las rutas, y con el que muestras tus vistas

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

chrome
Citar            
MensajeEscrito el 27 Oct 2014 10:22 pm
Mira "nasho" este es el código php que recoge las rutas y muestra las secciones.

Código PHP :

<?
error_reporting(1);
require_once("clases.php");


$home=0;
$session = new Session('strova');
//$session->InitializeSession();

session_start();

$oTpl=new TTemplateSystem();

print_r($_SESSION);

if(isset($_REQUEST['lang'])){
   $_SESSION['lang']=$_REQUEST['lang'];
}



$oTpl->addTemplate("MAIN","templates/main.htm");




$oDb=new Database();
mysql_set_charset('utf8');
$sec='';
if(isset($_GET['sec'])){
   $sec=$_GET['sec'];
   $oTpl->addTag("MAIN","sec",$sec);
}else{
   $oTpl->addTag("MAIN","sec",0);
}

$path="sec/$sec.php";


if(file_exists($path) && $sec!=''){
   //agregamos el template principal de la secci�n
   if(file_exists("templates/$sec.htm")){
      $oTpl->addTemplate('CONTENIDO',"templates/$sec.htm",'MAIN');
   }else{
      die("template file not found. (templates/$sec.htm)");
   }
   include($path);
   $oTpl->addTag("MAIN",'home',false);
}else{//el c�digo para default (home)
   $oTpl->addTemplate('CONTENIDO',"templates/default.htm",'MAIN');
   include('sec/default.php');
   $oTpl->addTag("MAIN",'home',true);
   $sec='default';
}


$cssPath="styles/$sec.css";

if(!file_exists($cssPath)){
   $css='';
}else{
   $css='<link rel="stylesheet" href="'.$cssPath.'">';
}

$oTpl->addTag('MAIN','CSS',$css);

$jsPath="js/$sec.js";

if(!file_exists($jsPath)){
   $js='';
}else{
   $js='<script src="'.$jsPath.'" type="text/javascript"></script>';
}



$oTpl->addTag('MAIN','JS',$js);






$sec=$_GET['sec'];
if($sec=='')$sec='home';
$oTpl->addTag('MAIN','_sec',strtolower($sec));
$oTpl->addTag('MAIN','HOME',$home);
$oTpl->addIf('MAIN','IF');





if(!isset($_REQUEST['lang']) && !isset($_SESSION['lang'])){
   $oTpl->setLang('es','MAIN');
}else{
   $oTpl->setLang($_SESSION['lang'],'MAIN');
}
$oTpl->addTag('MAIN','lang',$_SESSION['lang']);

$oTpl->addTag('MAIN','cant_car',count($_SESSION['camisas']));
$oTpl->addTag('MAIN','haLogueado',$_SESSION['uid']);
$oTpl->addTag('MAIN','usuario_nombre',$_SESSION['nombre']);
$oTpl->addTag('MAIN','usuario_apellido',$_SESSION['apellido']);
$oTpl->addIf('MAIN','LOGIN');

$oTpl->addTemplate('CATMENU',"templates/categorias-menu.htm",'MAIN');
include_once('sk-admin/categorias.php');
$oCat=new categorias($oDb,$oTpl,$oSession);
$oCat->dbSort='cat_nombre';
$oCat->dbDir='ASC';
$aRs=$oCat->getRecords();
$oTpl->addForEach('CATMENU','CATS',$aRs);

include_once('sk-admin/browser/archivos.php');

$oSlider=new archivos($oDb,$oTpl,$oSession);

$aRs=$oSlider->openByCat($oDb,'home');

$oTpl->addForEach('MAIN','SLIDER',$aRs);

//TOTAL CARRITO
$totItems=count($_SESSION['producto']);
$totPrecio=0;
foreach($_SESSION['producto'] as $k => $v){
    $totPrecio+=intval(str_replace('.','',$v['prod_precio']));

}
$oTpl->addTag('MAIN','total_productos',$totItems);
$oTpl->addTag('MAIN','total_pagar',$totPrecio);
echo $oTpl->execute();
?>


Muchas gracias

Por maooricio

51 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 27 Oct 2014 10:49 pm
No veo errores.. y de echo funciona bien empresa

**Verifica tu tipografía, me sale todo en blanco, como si no tuviera texto



Prueba solo con

Código PHP :

<IfModule mod_rewrite.c>
    RewriteEngine On
    
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f

    RewriteRule ^(.*).html$ index.php?sec=$1 [L]
</IfModule>

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

chrome
Citar            
MensajeEscrito el 27 Oct 2014 11:16 pm
"nasho" muchas gracias por tus respuestas.

Quito el código .htaccess que tenía y pongo solamente el que me dices y me genera una vez más un bucle de redireccionamiento.

Si me puedes seguir dando luces de cómo puedo solucionarlo, te lo agradezco demasiado.

Gracias infinitas

Por maooricio

51 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 28 Oct 2014 12:01 am
:/
creo que esto

Código PHP :

$sec=$_GET['sec'];
if($sec=='')$sec='home';
$oTpl->addTag('MAIN','_sec',strtolower($sec));
$oTpl->addTag('MAIN','HOME',$home);
$oTpl->addIf('MAIN','IF');


no debe de ir ahí, sino arriba en el if, donde defines el objeto oDb

depura tu código linea por linea... en algún lado esta redireccionando, tal vez dentro de una clase..

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.