Не работает header 404 на PHP

12 3
S
На сайте с 18.09.2011
Offline
20
3800

Здравствуйте ув. форумчане.

Не могу побороть такую проблему.

Сервер возвращает статус 200 ОК на несуществующие страницы. Не помогает ни "header 404 Not found" ни ErrorDocument 404 /error404.php

В общем перепробовал много всяких вариантов - без результатно. Точнее на локальном сервере ошибка 404 выдается корректно, а вот на хостинге почему-то не работает.

Вот, для примера, нерабочая ссылка. Она возвращает статус 200 :(

LEOnidUKG
На сайте с 25.11.2006
Online
1774
#1

Так и что у вас за движок то?

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
S
На сайте с 18.09.2011
Offline
20
#2

Netcat вроде

Mik Foxi
На сайте с 02.03.2011
Offline
1216
#3

header нужно вставлять до вывода чего-либо в браузер, чтобы он срабатывал.

Антибот, антиспам, веб фаервол, защита от накрутки поведенческих: https://antibot.cloud/ (8 лет на защите сайтов). Форум на замену серчу: https://foxi.biz/
S
На сайте с 18.09.2011
Offline
20
#4

Дак он срабатывает на локалке то

Оптимизайка
На сайте с 11.03.2012
Offline
396
#5

Отключите в php.ini вывод ошибок и предупреждений в браузер. По всей видимости у вас выводятся какие-нибудь warning или notice (см. исходный код страницы), поэтому header() уже не будет срабатывать.

⭐ BotGuard (https://botguard.net) ⭐ — защита вашего сайта от вредоносных ботов, воровства контента, клонирования, спама и хакерских атак!
S
На сайте с 18.09.2011
Offline
20
#6

Пройдите по ссылке. Там ничего не выводится. Чистый лист. Но статус 200

pan
На сайте с 24.10.2004
Offline
164
pan
#7

вот так например он вполне 404 отдаёт

Только не настроена 404

Мебельные фабрики Екатеринбурга (http://www.mebel66.ru/catalog/producers/) Дачный ГС жены (http://www.nafazendu.ru) Нет темы для бизнеса ? - да эта тема под ногами (http://www.uralstroyportal.ru/modules/forum/t1674.html)
S
На сайте с 18.09.2011
Offline
20
#8

То-то и оно, что сама ошибка сервером отрабатывается. Остается разобраться, почему на такие страницы она дает правильный ответ, а на ту, что мне нужно, она не хочет давать статус 404 ?

R
На сайте с 18.12.2009
Offline
92
#9

Была у меня такая проблема.

На одном хостинге работало, на другом нет. Сайт - мой самопис. Передаю заголовки:


header('HTTP/1.1 404 Not Found');
header('Status: 404 Not Found');

Ошибка была точно такая же, как и у Вас.

Убрал:


header('Status: 404 Not Found');

Все заработало. Не было времени разбираться, в чем собственно была проблема этого заголовка. Посмотрите, как формируется 404 у Вас.

O
На сайте с 29.05.2008
Offline
195
#10

Вставьте этот код перед тем, как устанавливаете 404 Not Found.


var_dump(headers_sent());

Приведите, что выводит var_dump.

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий