我看到某個地方的人做這樣的事情:PHP同時發送HTTP 1.0和1.1頭
<?php
header('HTTP/1.0 200 OK');
header('HTTP/1.1 200 OK');
?>
什麼是這樣做的目的是什麼?似乎第二個將總是覆蓋第一個頭? 或者是因爲如果有些客戶端不支持http 1.1,所以他們仍然可以收到1.0頭文件?
我看到某個地方的人做這樣的事情:PHP同時發送HTTP 1.0和1.1頭
<?php
header('HTTP/1.0 200 OK');
header('HTTP/1.1 200 OK');
?>
什麼是這樣做的目的是什麼?似乎第二個將總是覆蓋第一個頭? 或者是因爲如果有些客戶端不支持http 1.1,所以他們仍然可以收到1.0頭文件?
這是沒有目的的。只有一個HTTP狀態行可以發送到客戶端。
無論如何,默認是發送200 OK
,所以除非你覆蓋以前的狀態行(這很奇怪),那麼兩行都是毫無意義的。
如果您使用PHP 5.4+,則應該使用http_response_code()
來設置狀態碼。將協議實現留給Web服務器。
我想不出有什麼好的理由來做到這一點。如果客戶不支持本世紀的HTTP 1.1,那麼在網絡上很少會有效。 – Quentin 2014-11-03 17:17:44
你介意向我們展示你在哪裏找到的? – Brad 2014-11-03 17:19:02