возвращение команды curl http / 1.1 406 недопустимая ошибка - PullRequest
10 голосов
/ 28 декабря 2011

Я использую приведенную ниже командную строку curl, чтобы узнать, поддерживает ли мой сайт сжатие и кэширование.

curl --head --compress http://www.mysite.com

возвращает следующий результат

Http://1.1 406 Not Acceptable
Date: Wed, 28 Dec 2011 07:41:32 GMT
Server: Apache
Content-Type: text/html; charset-iso-8859-1

что делатьвы думаете о проблеме?Спасибо

Ответы [ 2 ]

30 голосов
/ 06 апреля 2012

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

curl -A "Mozilla/4.0"

Аналогично, используя libcurl C-API:

curl_easy_setopt(curl, CURLOPT_USERAGENT, "Mozilla/4.0");
1 голос
/ 28 декабря 2011

Из стандарта HTTP / 1.1:

Ресурс, идентифицированный запросом, способен генерировать только те объекты ответа, у которых характеристики контента не приемлемы, согласно заголовкам принятия, отправленным в запросе.*

Если это не запрос HEAD, ответ ДОЛЖЕН включать объект, содержащий список доступных характеристик объекта и местоположений, из которых пользователь или пользовательский агент может выбрать наиболее подходящий.

Так что отбросьте --head, и вы должны увидеть, что не так.

406 может быть именно тем, что доказывает вашу правоту - сервер не поддерживает сжатие.:)

...