我強烈建議您使用
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found");
而不是
header("HTTP/1.1 404 Not Found");
當我(意外地)加入 "HTTP/1.1 200 Ok" 標頭時,我在 Apache/2.0.59 (Unix) 回應 HTTP/1.0 時遇到了很大的麻煩。
大多數頁面都正確顯示,但在某些頁面上,apache 會在其中新增奇怪的內容
頁面頂端(在我的 php 腳本的任何輸出之前)的 4 位數十六進位程式碼,似乎是一種校驗和,因為它在頁面和瀏覽器之間會變更。(相同頁面和瀏覽器使用相同程式碼)
頁面底部(在我 php 腳本的完整輸出之後)的 "0"
我花了一段時間才找出 HTTP 標頭中的錯誤協定。