HEAD-запрос получает «403 запрещено», а GET «200 в порядке»?

после нескольких месяцев исчезновения сайта из результатов поиска в каждой крупной поисковой системе, я наконец выяснил возможную причину.

Я использовал WebBug для исследования заголовка сервера. Посмотрите разницу, если запрос является HEAD или GET.

HEAD Отправленные данные:

HEAD / HTTP/1.1
Host: www.attu.it
Connection: close
Accept: */*
User-Agent: WebBug/5.0

HEAD Полученные данные:

HTTP/1.1 403 Forbidden
Date: Tue, 10 Aug 2010 23:01:00 GMT
Server: Apache/2.2
Connection: close
Content-Type: text/html; charset=iso-8859-1

GET Отправленные данные:

GET / HTTP/1.1
Host: www.attu.it
Connection: close
Accept: */*
User-Agent: WebBug/5.0

GET Полученные данные:

HTTP/1.1 200 OK
Date: Tue, 10 Aug 2010 23:06:15 GMT
Server: Apache/2.2
Last-Modified: Fri, 08 Jan 2010 08:58:01 GMT
ETag: "671f91b-2d2-47ca362815840"
Accept-Ranges: bytes
Content-Length: 722
Connection: close
Content-Type: text/html

// HTML code here

Теперь браузеры по умолчанию отправляют GET запрос (по крайней мере, так говорит Firebug). Возможно ли, чтобы сканеры отправили запрос HEAD? Если так, почему только этот сервер отвечает 403, в то время как другие серверы с других сайтов я m maniving not?

В случае, если это важно, единственной строкой, присутствующей в .htaccess, является (если мой клиент не изменил ее, так как они не хотят давать мне доступ к своему серверу)

AddType text/x-component .htc

ОБНОВЛЕНИЕ
Спасибо @Ryk. FireBug и Fiddler отправляют запросы GET, которые получают 200 (или 300) ответов. Как и ожидалось. Поэтому я думаю, что это либо плохая настройка сервера (хотя это странно, поскольку хостинг принадлежит крупной компании с миллионами клиентов), либо что-то, что они вставили в .htaccess. Им придется разрешить мне изучить их учетную запись.

Вторая часть моего вопроса состояла в том, может ли это быть причиной того, что веб-сайт не появился ни в одной поисковой системе (сайт : www.attu.it ). не дает результатов). Любая мысль?

ОБНОВЛЕНИЕ 2
После некоторой возни, оказывается, что в корневом каталоге есть phpMyAdmin, блокирующий роботов .htaccess, Это вызвало отправку любого запроса от роботов с 403 Запрещено

7
задан mjsarfatti 3 October 2010 в 14:12
поделиться

1 ответ

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

Fiddler даст вам хорошую идею, и вы также можете попробовать Firefox и установить дополнение FireBug и просмотреть страницу на наличие ошибок.

Глядя на сайт, я получаю кучу 404 для favicon.ico, но кроме этого, когда я делаю простой GET запрос, я получаю 200 OK, но когда я делаю HEAD, я также получаю 403. Сейчас изучаю этот вопрос.

UPDATE: Я думаю, что это может быть конфигурация сервера Apache, но не уверен на 100%. http://hc.apache.org/httpclient-3.x/methods/head.html

UPDATE2: Чтение этого http://www.pubbs.net/200811/httpd/17210-usershttpd-how-to-reject-head-request.html заставляет меня поверить, что ваш сервер Apache может быть настроен на отклонение HEAD-запросов. В этом случае он будет возвращать 403.

1
ответ дан 7 December 2019 в 16:37
поделиться
Другие вопросы по тегам:

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