Иногда перенаправления не удалось загадочно в PHP? - PullRequest
0 голосов
/ 13 января 2010
@header('Location: ' . $uri);

Но это случается редко, в чем проблема?

Ответы [ 4 ]

3 голосов
/ 13 января 2010

Не используйте @, чтобы скрыть ошибку и проверить ваши логи, это одна из нескольких вещей:

  1. Предыдущая ошибка вывода остановка перенаправления?
  2. $ Ури иногда плохой
  3. Что-то еще в вашем коде плохо.

Отладка - это ответ.

2 голосов
/ 13 января 2010

Возможно, по какой-то причине ваш скрипт отправляет какой-то вывод перед ним. Удалить @.

1 голос
/ 13 января 2010

Заголовок может быть отправлен не сразу. Всегда используйте die() после header().

1 голос
/ 13 января 2010

Ну, это скорее всего потому, что заголовки уже были отправлены из-за пробелов. Вы никогда этого не узнаете, потому что перед вами стоит знак @, который останавливает отображение ошибок.

Как правило, этот пробел может быть вызван другой ошибкой, или это может произойти только при включении определенного файла.

Другая возможность состоит в том, что $url не отформатирован должным образом, или заголовок просто выглядит неправильно для браузера. В этом случае браузер может проигнорировать это. Отобразите полный заголовок, который вы отправляете, и убедитесь, что он выглядит правильно.

Наконец, некоторые браузеры прекратят перенаправление, если вы перенаправили слишком много раз подряд.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...