簡體   English   中英

在沒有php.ini的情況下設置display_errors = 0和log_errors = 1

[英]Setting display_errors=0 and log_errors=1 without php.ini

由於我無法控制的原因,我無法在生產服務器上的php.ini中設置display_errors = 0和log_errors = 1。 我知道我可以設置error_reporting(0); 完全抑制所有錯誤消息,但這會影響日志錯誤和顯示的錯誤。 我希望在運行時設置display_errors = 0和log_errors = 1等效。 這可能嗎? 謝謝。

兩者都是PHP_INI_ALL ,因此您可以在運行時使用ini_set

ini_set('display_errors', 0);
ini_set('log_errors', 1);

http://php.net/manual/en/ini.list.php

試試這個:

ini_set('display_errors', 0);
ini_set('log_errors', 1);

如果您使用PHP作為模塊並且不能使用php.ini主指令也不能覆蓋所需文件夾上的php.ini,並且您不會在php文件上啟用它,您可以嘗試使用.htaccess habilities。

在包含您的應用程序的文件夾的頂部,放置一個.htaccess文件: php_flag display_errors 0

應該只適用於php輸出顯示而不是日志。

無論如何,關於ini_set()提供的解決方案將僅適用於包含它的頁面。 注意:如果包含,則display_error值在解析時將起作用。 但是如果你直接訪問它將無法正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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