在照彭武興先生的《PHP BIBLE》中所述,header可以送出Status標頭,如 就可以讓用戶浏覽器出現文件找不到的404錯誤,但是我試了這樣是不行的。 後來我到w3.org上查了http的相關資料,終於試出來了如何Header出狀態代碼(Status),與大家分享。 其實應該是這樣的: Header("http/1.1 403 Forbidden"); ?> 第一部分為HTTP協議的版本(HTTP-Version) 第二部分為狀態代碼(Status) 第三部分為原因短語(Reason-Phrase) 三部分中間用一個空格分開,且中間不能有回車,第一部分和第二部分是必需的,第三部分則是給人看的,可寫可不寫甚至亂寫。 還有,這一句的輸出必須在Html文件的第一行。 下面我給出各代碼所代表的意思(是從w3.org上查到的,夠權威了): * 1xx: Informational - Request received, continuing process * 2xx: Success - The action was successfully received, understood, and accepted * 3xx: Redirection - Further action must be taken in order to complete the request * 4xx: Client Error - The request contains bad syntax or cannot be fulfilled * 5xx: Server Error - The server failed to fulfill an apparently valid request | "100" ; Continue | "101" ; Switching Protocols | "200" ; OK | "201" ; Created | "202" ; Accepted | "203" ; Non-Authoritative Information | "204" ; No Content | "205" ; Reset Content | "206" ; Partial Content | "300" ; Multiple Choices | "301" ; Moved Permanently | "302" ; Moved Temporarily | "303" ; See Other | "304" ; Not Modified | "305" ; Use Proxy | "400" ; Bad Request | "401" ; Unauthorized | "402" ; Payment Required | "403" ; Forbidden | "404" ; Not Found | "405" ; Method Not Allowed | "406" ; Not Acceptable | "407" ; Proxy Authentication Required | "408" ; Request Time-out | "409" ; Conflict | "410" ; Gone | "411" ; Length Required | "412" ; Precondition Failed | "413" ; Request Entity Too Large | "414" ; Request-URI Too Large | "415" ; Unsupported Media Type | "500" ; Internal Server Error | "501" ; Not Implemented | "502" ; Bad Gateway | "503" ; Service Unavailable | "504" ; Gateway Time-out | "505" ; HTTP Version not supported