Проблемка с 404

12 3
mff
На сайте с 21.02.2008
Offline
245
mff
1033

Здравствуйте уважаемые коллеги!

Ни так давно заметил, что Яндекс стал хавать непонятные странички на моем сайте:

http://site.ru/channel_eng.php/www.tv2.tomsk.ru/tv2/tv-programm/channel_eng.php?ch=1579

Так как у меня не бывает страничек, где после расширения стоит слэш, я прописал код:

if(strpos($_SERVER['REQUEST_URI'], '.php/')) {

header("HTTP/1.0 404 Not Found");
include("404.php");
die;
}

При заходе на такую страничку сайт правильно реагирует и отправляет на 404.php Но Яндекс всё равно продолжает их индексировать (скрин во вложении). А те которые не хавает, подписывает, что "Недостаточно качественная", а не то, что там 404 ответ. Подскажите, как быть? В чем может быть дело?

За ранее спасибо, Александр.

png 666.png
mff
На сайте с 21.02.2008
Offline
245
mff
#1

Добавлю скрин кода, так как форум вставил какие то звезды:

H
На сайте с 15.02.2010
Offline
105
#2
mff:
правильно реагирует и отправляет на 404.php

Это скорее всего отдаёт код 301 или 200, проверьте! А роботам для прекращения индексации надо 404 или 410.

mff
На сайте с 21.02.2008
Offline
245
mff
#3
hubbiton:
Это скорее всего отдаёт код 301 или 200, проверьте! А роботам для прекращения индексации надо 404 или 410.

Скажите пожалуйста, как это проверить? С ув.

H
На сайте с 15.02.2010
Offline
105
#4
mff
На сайте с 21.02.2008
Offline
245
mff
#5

Чекнул, вот что выдал сервис:

H
На сайте с 15.02.2010
Offline
105
#6

Тады не знаю, должен удалить со временем...

O
На сайте с 28.07.2009
Offline
104
#7

Во-первых, аналогичные штуки настраиваются не в коде, а в конфиге веб-сервера.

Во-вторых, почитайте про canonical.

В-третьих, сделайте сами curl -I , либо попробуйте https://olegon.ru/page/ он притворяется ботом (правда, гугловым).

В-четвертых, рекомендую проверить на сайте заражение вирусом или наличие открытого редиректа (когда при переходе на определенный URI вашего сайта сразу перекидывает на какой-то другой сайт).

занимаюсь автоматизацией торговли (http://olegon.ru)
mff
На сайте с 21.02.2008
Offline
245
mff
#8
olegon:
Во-первых, аналогичные штуки настраиваются не в коде, а в конфиге веб-сервера.

Опа! Сейчас обнаружил, что после недавнего падения сервера у хостинг-провайдера - нет файла .htaccess в корне сайта 🙅

olegon:
Во-вторых, почитайте про canonical.

Читал, и кое где его использую. Но в данном случае считаю что такие УРЛ должны четко отправлять 404, так как эти вереницы непонятных папок и файлов берутся непонятно откуда.

olegon:
В-третьих, сделайте сами curl -I , либо попробуйте https://olegon.ru/page/ он притворяется ботом (правда, гугловым).

Спасибо! Полез курить!

olegon:

В-четвертых, рекомендую проверить на сайте заражение вирусом или наличие открытого редиректа (когда при переходе на определенный URI вашего сайта сразу перекидывает на какой-то другой сайт).

В этом плане всё чисто! Сайт написан мной и я знаю каждый кусочек кода на нем. С ув.

M
На сайте с 04.12.2013
Offline
185
#9

Это походу PATH_INFO для множественных точек входа. Т.е. вы просто поместили php-файлы в корень.

Чтобы запретить запуск файлов с такими путями, можно использовать директиву AcceptPathInfo Off. Но лучше использовать современные подходы к сайтостроению, а именно единую точку входа, потому что у множественных есть и масса др. проблем с дублями, например к именам файлов можно спокойно добавлять строку параметров.

Хостинг FOZZY ( http://fozzy.com.ru ) / Выслушаю предложения на домены ( http://u75.ru/domains-for-sale ) / Домены и скрипт для коротких ссылок ( http://u75.ru/domains-for-shortcuts )
IL
На сайте с 20.04.2007
Offline
412
#10
mff:
Опа! Сейчас обнаружил, что после недавнего падения сервера у хостинг-провайдера - нет файла .htaccess в корне сайта

Аккуратнее. Он иногда не отображается по умолчанию в ftp-клиенте..

mff:
Но Яндекс всё равно продолжает их индексировать (скрин во вложении).

Робот видит "кривую" ссылку и переходит по ней.. При этом результат похода робота можно наблюдать в вебмастере.

Возможно, помимо 404, имеет смысл разобраться с причиной появления такого рода ссылок (относительные вместо абсолютных, видимо)..

В зависимости от настроек сервера, по URL (даже при отсутствии .htaccess)

может быть выведен как channel_eng.php из корня, или "точка входа" (на которую все несуществующие адреса перенаправляются), так и страница 404 ошибки (по умолчанию, или "своя" из корня вроде 404.php 404.html)

Естественно, используя директивы .htaccess, можно все эти настройки переопределить.. =)

12 3

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