Игнорирование редиректов

switch

Новичок
Игнорирование редиректов

Вот возник вопрос: может ли клиент игнорировать редирект?
То есть, на пример, на странице стоит такая проверка
PHP:
if (!isset ($_SESSION['system_user']))
   {
      if ($_SERVER['QUERY_STRING'] != "")
      {
          header("Location: index.php");
          echo "cool";
      }
   }
Вопрос заключаеться в том, как именно действует редирект?
Тоесть это посылаеться в хедере ответ клиенту "Location: index.php", я знаю что по HTTP протоколу "продвинутый клиент" тут же должен обработать этот редирект и пойти на ndex.php, но что будет если клиент не перейдет по линку. Тоесть просто проигнорирует его? Что тогда будет?
Сработает ли строка
PHP:
echo "cool";
?
 

Screjet

Новичок
сработает. Вот только игнорят редиректы только поломанные браузеры. Откуда и вытекает подозрение на отношение к варезности топика.
 

switch

Новичок
Дело в том, что у нас поломали один из сайтов. И я админ :) Вообщем все востановил, но дело в том никак не могу найти дыру. ДОЛГО все проверял и перепроверял и вот возникло такое подозрение.
 

Romantik

TeaM PHPClub
switch
каким образом поломали?
что в логах?
может просто пароль узнали или соседний хостинг или параметры от клиента не проверялись?
 

Фанат

oncle terrible
Команда форума
echo "cool";
выполнится в любом случае, срабтает редирект, или нет
 

Макс

Старожил PHPClub
switch, это можно легко самому проверить:
Пишем скрипт :
PHP:
header("Location: http://google.com");
echo "test test test";
делаем HTTP-запрос вручную (например как в этом треде)

Я получил такой ответ :
Код:
HTTP/1.1 302 Found
Date: Wed, 16 Mar 2005 14:44:34 GMT
Server: Apache/1.3.27 (Win32) PHP/5.0.3-dev
X-Powered-By: PHP/5.0.3-dev
Location: [url]http://google.com[/url]
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html

e  
test test test
0
 

switch

Новичок
Да, вот тут то я похоже и прогнал.
Не поставил die(); после редиректа. Если пользовались телнетом или какимто хитрым броузером без редиректов...
Вообщем прогнал.
 
Сверху