elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  [mod_rewrite] Esta regla no me funciona en linea, pero en localhost si !
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [mod_rewrite] Esta regla no me funciona en linea, pero en localhost si !  (Leído 2,545 veces)
Diabliyo


Desconectado Desconectado

Mensajes: 1.441


shell# _


Ver Perfil WWW
[mod_rewrite] Esta regla no me funciona en linea, pero en localhost si !
« en: 19 Julio 2013, 01:31 am »

Buen dia.

Tengo una "RewriteRule" que no me funciona online, pero si en mi localhost.

La regla es:
Código:
RewriteRule ^descargar/(.+)/(.+)\-(.+)\.html$ descargar.php?id=$1&file_id=$2

Tanto en mi localhost como en mi web enlinea tengo el archivo descargar.php en la raiz del sitio, pero el resultado es distinto :(

En mi localhost, se descarga el archivo.
En mi sitio web en linea no se descarga el archivo, me manda a esta url: http://core.miweb.com/descargar/index.php

Ya verifique el enlace en el localhost y en la web, y estan generados igual (bien):

En mi Web:
Código:
<a href="http://core.miweb.com/descargar/facturacion/97879-Elarchivo.html">Descargar</a>

En mi localhost:
Código:
<a href="http://localhost/descargar/facturacion/97879-Elarchivo.html">Descargar</a>

Sera por que en mi web, el sitio esta en subdominio y en mi local en dominio raiz ?

Sobre las reglas, en el localhost las tengo escritas en un htacces dentro del public_html, pero en mi Sitio Web las tengo en la configuracion del VirtualHost del subdominio http://core.miweb.com.

Saludos !


« Última modificación: 20 Julio 2013, 04:07 am por Diabliyo » En línea

Diabliyo


Desconectado Desconectado

Mensajes: 1.441


shell# _


Ver Perfil WWW
Re: [mod_rewrite] Esta regla no me funciona en linea, pero en localhost si !
« Respuesta #1 en: 19 Julio 2013, 16:33 pm »

He verificado y la razon del porque me carga http://core.miweb.com/descargar/index.php es porque en cierta parte del codigo cuando no se detectan las variables $_GET que deseo, hago llamada con header() a index.php.

Pero aqui surge un inconveniente, porque no se estan enviando las variables $_GET ????

Vaya, el archivo descargar.php es llamado, pero no se pasan las variables $_GET que se indican en la regla:

Código:
RewriteRule ^descargar/(.+)/(.+)\-(.+)\.html$ descargar.php?id=$1&file_id=$2

No pasa la variable $_GET["id"] y mucho menos la de $_GET["file_id"].

En el archivo descargar.php comente la linea del header( "Location: index.php"); para ver que sucedia, y puse un print_r($_GET); y me da:

Código:
Array()

Y en la URL tengo: http://core.miweb.com/descargar/facturacion/0980989-Factura.html

Que sera ???


« Última modificación: 20 Julio 2013, 04:08 am por Diabliyo » En línea

Diabliyo


Desconectado Desconectado

Mensajes: 1.441


shell# _


Ver Perfil WWW
Re: [mod_rewrite] Esta regla no me funciona en linea, pero en localhost si !
« Respuesta #2 en: 19 Julio 2013, 23:47 pm »

Mas o menos asi esta el archivo descargar.php:

Código
  1. <?php
  2.  
  3. if( is_array($_GET["file_id"]) || !$_GET["file_id"] ) # error
  4.          {
  5.          print_r($_GET);
  6.          # header( "Location: index.php" );
  7.          }
  8. else
  9.          {
  10.          # hace algo con la variable $_GET["flie_id"]
  11.          # genera PDF
  12.          }
  13. ?>

Resultado: Array()
« Última modificación: 22 Julio 2013, 16:07 pm por Diabliyo » En línea

el-brujo
ehn
***
Desconectado Desconectado

Mensajes: 21.637


La libertad no se suplica, se conquista


Ver Perfil WWW
Re: [mod_rewrite] Esta regla no me funciona en linea, pero en localhost si !
« Respuesta #3 en: 27 Julio 2013, 19:23 pm »

Citar
Sera por que en mi web, el sitio esta en subdominio y en mi local en dominio raiz ?

Eso parece

Citar
Sobre las reglas, en el localhost las tengo escritas en un htacces dentro del public_html, pero en mi Sitio Web las tengo en la configuracion del VirtualHost del subdominio http://core.miweb.com.

Pues pon la reglas de rewrite dentro de un htaccess en el vhost correspondiente o directamente en el public_html del subdominio.

Debes tener un subdominio (vhost) pero el vhost por defecto debe ser otro.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
En el host una pagina no me lee el css, pero en localhost si, porque?
Desarrollo Web
XXXXXX 5 5,762 Último mensaje 30 Abril 2010, 23:39 pm
por fede_cp
[Problema] Tengo una web que en localhost funciona barbaro, pero en un servid...
Desarrollo Web
astinx 2 4,302 Último mensaje 22 Diciembre 2011, 23:20 pm
por astinx
[RewriteRule] No encuentro como hacer esta regla ! (solved)
PHP
Diabliyo 5 3,245 Último mensaje 6 Octubre 2012, 06:11 am
por Diabliyo
Puedo bypassear esta regla del SQUID?
GNU/Linux
TrashAmbishion 0 1,691 Último mensaje 9 Noviembre 2013, 20:08 pm
por TrashAmbishion
Aplicación con sockets no funciona en LAN (sólo con localhost) « 1 2 »
Java
NathanD 10 6,931 Último mensaje 19 Noviembre 2013, 13:13 pm
por egyware
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines