2
我看到瀏覽器(Chrome)發送請求頭 - 接受編碼:gzip,緊縮,SDCHPHP - getallheaders()可以沒有返回Accept-Encoding頭
然而,當我我不服務器上打印頭在那裏看到Accept-Encoding。
var_dump(getallheaders());
這是服務器設置的問題嗎?如果有,它缺少什麼?
我看到瀏覽器(Chrome)發送請求頭 - 接受編碼:gzip,緊縮,SDCHPHP - getallheaders()可以沒有返回Accept-Encoding頭
然而,當我我不服務器上打印頭在那裏看到Accept-Encoding。
var_dump(getallheaders());
這是服務器設置的問題嗎?如果有,它缺少什麼?
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.";
}
它也不在$ _SERVER中。我確定瀏覽器正在發送這個頭文件,我可以在web開發工具中看到它。 – t0x13
編碼僅與Web服務器(不是您的腳本)有關,所以我假設您的Web服務器軟件(即Apache)將它們去除。 –
最有意義的是,apache conf中的設置將它們剝離? – t0x13