2010-04-10 23 views
29

有沒有像通配符指令來捕獲所有可能的錯誤並在單個自定義錯誤頁面中處理它們?Single ErrorDocument指令捕獲所有錯誤(.htaccess)

ErrorDocument 404 /error.php?code=404 
ErrorDocument 403 /error.php?code=403 
... 
ErrorDocument NNN /error.php?code=NNN #possible use of RegExp? 

我知道我可能不會在這裏處理很多自定義錯誤頁面,但我對此很好奇。

回答

23

這是不可能的。您需要爲每個狀態代碼指定一個ErrorDocument指令,而不是使用默認錯誤處理程序。

+0

好吧,有點想法 - 我嘗試使用一些在RewriteRule指令中使用的「技巧」,但他們只給了500個錯誤。感謝澄清。 – 2010-04-10 11:17:12

3

您可以通過REDIRECT_STATUS環境變量(由Apache設置)在腳本中提取錯誤狀態代碼,而不是傳入錯誤狀態代碼。請參閱:http://httpd.apache.org/docs/2.0/custom-error.html

+3

這並不能解決在'.htaccess'中枚舉每個錯誤代碼的問題,但對於知道這些問題仍然有用 – HXCaine 2012-06-09 11:50:41

+0

這就是我正在做的事情,並且問題是如何使這個更容易在.htaccess中處理。 – 2017-03-23 02:01:01