Перенаправление местоположения заголовка PHP не работает - почему? [дубликат]

24
задан Industrial 25 April 2010 в 21:48
поделиться

4 ответа

Я напомнил себе, что xDebug установлен в реальной тестовой среде. и после поиска в Google я нашел этот сайт: http://bugs.xdebug.org/view.php?id=532

Итак, я загрузил последнюю версию xDebug и соответственно изменил php.ini для нового файла, и все работает как шарм. Заголовки отправляются - перенаправление выполнено и отображаются ошибки.

Спасибо всем за помощь!

1
ответ дан 28 November 2019 в 23:23
поделиться

Включены ли display_errors?
@Gumbo - Конечно, есть!

ну, конечно, нет. потому что

Чтобы проверить, что происходит, я добавил эхо перед заголовком.

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

Итак, прежде всего убедитесь, что вы видите сообщения об ошибках.
просто распечатайте неопределенную переменную,

error_reporting(E_ALL);
echo $undef9306;

Я уверен, что вы ее не увидите. Итак, вам нужно включить отображение ошибок

Затем на сервере Вы можете использовать функцию headers_sent () , чтобы узнать, были ли отправлены заголовки. На стороне клиента используйте HTTP-сниффер, чтобы узнать, было ли что-нибудь отправлено

И проверьте свой файл на наличие спецификации.

0
ответ дан 28 November 2019 в 23:23
поделиться

Включены ли у вас короткие теги? попробуйте использовать длинный тег :

<?php
error_reporting(E_ALL);
header("Location: login.php");
die();
?>
1
ответ дан 28 November 2019 в 23:23
поделиться

Из документации PHP :

header () должен быть вызван перед отправкой любого фактического вывода, либо обычным HTML-теги, пустые строки в файле или из PHP.

И в вашем случае вы используете echo перед header ()

44
ответ дан 28 November 2019 в 23:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: