簡體   English   中英

如何關閉Zend Server中的默認HTTP狀態代碼錯誤?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM