Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: dimitrix en 23 Enero 2012, 02:52 am



Título: Header en PHP
Publicado por: dimitrix en 23 Enero 2012, 02:52 am
Tengo una pregunta y es que si tengo un documento php con lo siguiente:

Código
  1. <?php
  2. header("Location: http://www.google.es/");
  3. ?>
  4.  
  5. <html>
  6. Hola a todos...
  7. </html>


Si lo ejecuto, el servidor me enviará la cabecera para que se envíe el navegador a 'google.es', no obstante mi pregunta es, si el SERVIDOR también envía el 'Hola a todos', aunque no se muestre.

Lo digo por temas de seguridad, gracias.


Título: Re: Header en PHP
Publicado por: #!drvy en 23 Enero 2012, 05:21 am
Que tal dimitrix   :P

Hay un complemento muy útil para firefox que te permite comprobar precisamente eso..
He estado haciendo algunas pruebas y parece que si. Si bloqueas las re-direcciones HTTP, el html se ejecuta.

Lo probé así:

Código
  1. <?php
  2. header('Location: http://www.google.com');
  3. ?>
  4. <html>
  5. <head>
  6. </head>
  7. <body>
  8.  Si consigo ver esto, soy un super juanker!!!!
  9. </body>
  10. </html>

Y el resultado al bloquear la re-dirección HTTP fue este:
Código
  1. <html>
  2. <head>
  3. </head>
  4. <body>
  5.  Si consigo ver esto, soy un super juanker!!!!
  6. </body>
  7. </html>

Ahora llega lo que interesa,

Sabemos que PHP se ejecuta mucho antes que el HTML. Por tanto, si hacemos que PHP se muera (die) con la re-dirección en teoría no debería mostrar el html..
En teoría y en la practica también xD.

Código
  1. <?php
  2. die(header('Location: http://www.google.com'));
  3. ?>
  4. <html>
  5. <head>
  6. </head>
  7. <body>
  8. lalala
  9. </body>
  10. </html>

Resultado al ser bloqueado:
Código
  1.  

Osease, pagina en blanco xD.

El complemento en cuestión se llama "NoReddirect". Lo configuras con una lista de sitios que no quieras que te re-direcciónen (en mi caso localhost xD) y te muestra una alerta del tipo "HTTP/302: url", cada vez que la pagina te quiera re-direcciónar.
Código
  1. https://addons.mozilla.org/es-ES/firefox/addon/noredirect/

Saludos


Título: Re: Header en PHP
Publicado por: dimitrix en 7 Febrero 2012, 01:14 am
Ya he probado, testeado y me va perfecto.

Mil gracias.


Título: Re: Header en PHP
Publicado por: [u]nsigned en 7 Febrero 2012, 02:46 am
Por eso siempre se ejecuta exit(); luego de una redireccion por header....


Título: Re: Header en PHP
Publicado por: dimitrix en 7 Febrero 2012, 05:32 am
Por eso siempre se ejecuta exit(); luego de una redireccion por header....

Eso de siempre... xDD

Realmente es la primera vez que lo veo^^

Pero está bien saberlo.