2013-05-17 3 views
2

Я вижу браузер (Chrome) отправить заголовок запроса - Accept-Encoding: GZIP, выкачать, SDCHPHP - getallheaders() не возвращает Accept-Encoding Header

Однако, когда я распечатать заголовки на сервере я не» t см. Accept-Encoding.

var_dump(getallheaders()); 

Это проблема с настройкой сервера? Если да, то чего это не хватает?

+0

Кодирование относится только к веб-серверу (не к вашему сценарию), поэтому я предполагаю, что ваше программное обеспечение веб-сервера (то есть Apache) разбивает их. –

+0

, который имеет наибольшее значение, является ли настройка в apache conf, которая их линяет? – t0x13

ответ

0

HTTP-заголовки должны быть в массиве $_SERVER с ключами с префиксом HTTP_.

Если заголовок Accept-Encoding не указан в HTTP-запросе, вы должны убедиться, что браузер действительно отправил этот заголовок.

if (isset($_SERVER['HTTP_ACCEPT_ENCODING'])) { 
    echo "Accept-Encoding is set to: ", $_SERVER['HTTP_ACCEPT_ENCODING']; 
} else { 
    echo "Accept-Encoding is not set."; 
} 
+0

Это тоже не в $ _SERVER. Я уверен, что браузер отправляет этот заголовок, я вижу его в инструментах веб-разработчиков. – t0x13