Какие настройки PHP подавляют ошибку «заголовки уже отправлены»?

PHP-скрипт содержит некоторые выходные данные, которые вызывают

Warning: Cannot modify header information - headers already sent (output started at script:line)

когда мы позже попытаемся отправить заголовок перенаправления, но только на живом сервере.

На локальный сервер вывод тоже появляется, но редирект все еще работает.

Таким образом, кажется, что между двумя серверами существует разница в настройке (в ini.php/.htaccess/через ini_set?). Какая настройка может вызвать эту разницу?

Обновлять:

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

Вы не можете «подавить» эту ошибку (я не рекомендую подавлять ошибки любой), вы просто не можете изменить заголовки после того, как они уже были отправлены.

GrumpyCrouton 23.01.2019 18:36

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

Devon 23.01.2019 18:38

@GrumpyCrouton Вывод текста происходит на обоих серверах (я вижу это локально, когда ввожу оператор exit(), но, тем не менее, перенаправление работает локально. Почему это может быть?

Alexander Presber 23.01.2019 18:38

@AlexanderPresber Не знаю, но было бы лучше не отправлять заголовки после того, как вы отправили часть тела, независимо от того, работает это или нет, потому что это не должно работать.

GrumpyCrouton 23.01.2019 18:44

@GrumpyCrouton Я полностью понимаю, просто мой набор тестов работает нормально локально и не видит основной проблемы, потому что эта ошибка почему-то не запускается. Я хочу, чтобы это было.

Alexander Presber 23.01.2019 18:46

@AlexanderPresber Да, к сожалению, я понятия не имею, почему это будет работать на вашем локальном сервере:/

GrumpyCrouton 23.01.2019 18:47

@AlexanderPresber Довольно исчерпывающий ответ в разделах с повторяющимися целевыми функциями о том, что в php.ini влияет на это. Можете ли вы обязательно найти время, чтобы прочитать его, и, возможно, отредактировать этот вопрос впоследствии, если пункты, упомянутые там, не работают?

Félix Adriyel Gagnon-Grenier 23.01.2019 20:22

Спасибо @FélixGagnon-Grenier. Теперь я узнал, что ответ на этот вопрос заключается в том, что php_value output_buffering 'on' может вызывать это явление. Я голосую за повторное открытие вопроса, потому что это явно нет об ошибке фиксация, но в первую очередь о том, как убедиться, что появляется ошибка.

Alexander Presber 25.01.2019 15:59
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
8
26
0

Другие вопросы по теме