[英]How to turn off default HTTP status code errors in Zend Server?
每當我在PHP代碼中返回一些狀態代碼時,Zend Server都會在我的網站底部顯示以下錯誤(帶有我返回的HTTP代碼的消息)。 因此,例如,如果我返回401,它會給我另一個401錯誤,附加到我的401頁面上:
有什么辦法可以關閉它嗎? 我將Zend Server Community Edition 5.0與PHP 5.2一起使用 。
編輯:
看來這是默認的Apache錯誤處理。 有沒有辦法禁用它? 最好沒有我自己的錯誤頁面。
其他編輯:
我嘗試使用ErrorDocument指令編輯.htaccess。 它仍然給我我的錯誤頁面(空白頁面)+ Apache錯誤(如上面的屏幕截圖所示)。
服務器上的ZendServer 4不會發生這種情況。 我在localhost上使用ZendServer 5。 從Zend方面是否可能是某種錯誤或配置錯誤?
行為:
(在所有測試用例中,我返回401)
當我在.htaccess中使用默認的ZendServer配置+ ErrorDocument指令時,我得到了自己的錯誤頁面+ Apache錯誤頁面,其后附有它。
當我使用默認的ZendServer配置+禁用自己的ErrorDocument指令時,我只會得到Apache錯誤頁面。
當我將Apache錯誤頁面更改為空白文件+使用我自己的ErrorDocument指令時,得到了所需的行為,但是錯誤404仍然附加了我自己的默認Apache錯誤。
正如您在Apache httpd 文檔頁面上看到的那樣,您無法將其禁用。
如果只不想輸出,則有兩個選擇:
# you *HAVE TO* to put at least one character (here it's a space)
ErrorDocument <errorcode> `' '`
# if you really want to have 0 character, use a blank file
ErrorDocument <errorcode> /var/www/blank
盡管您必須針對每個錯誤代碼對此進行“禁用”。
您可以在httpd服務器的conf文件,.htaccess文件或VHost中進行這些更改(盡管我不知道Zend Server中的conf文件在哪里)。
我認為您不一定要“禁用”該錯誤。 您需要做的是找出正在報告的錯誤(通過日志文件),然后您可能會發現權限問題或PHP腳本實際上正在失敗並轉儲其核心。
要覆蓋apache中的默認錯誤頁面,您可以將以下行放在.htaccess文件或httpd.conf配置中。
ErrorDocument 401 /path/to/the/new/error/page.html
適用於您要覆蓋的所有錯誤頁面。 因此,只需將這些錯誤的狀態代碼更改為503。
apache文檔中的更多信息: http : //httpd.apache.org/docs/1.3/mod/core.html#errordocument
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.