我希望在我的个人网站上有个性化错误的可能性:我的意思是,当发生错误时,我想在视频上不显示任何内容,而是在简单文本上记录所有错误文件,因为它总是应该在生产中完成。
我知道有4个级别你可以采取行动,这样做,并且这些级别具有不同的优先级。 我的意思是你不能用PHP中的“运行时”文件覆盖已在php.ini中设置的指令,你可以使用函数error_reporting()和ini_set()将它放在网页上。
如果我没有犯错,这些是4级(来自最重要的级别):
1)php.ini
2)httpd.conf
3).htaccess文件放在文件根目录中/ strong>
4)最后使用预定义函数error_reporting()和ini_set()
的PHP文件我的问题出现在我的网站上,我的网站已经存在。我想使用上面显示的第四个解决方案,我准备了这个php文件,我尝试将其放在我的网页上,这样:
<?php
include 'err_produ.php';
?>
它的来源是:
<?php
/*
This is for PRODUCTION.
Report all errors but show nothing on video: use the error_log file instead.
*/
error_reporting(E_ALL);
ini_set('display_errors', 'off');
ini_set('display_startup_errors', 0);
ini_set('log_errors', 1);
ini_set('log_errors_max_len', 0);
ini_set('ignore_repeated_errors', 1);
ini_set('ignore_repeated_source', 1);
ini_set('report_memleaks', 1);
ini_set('track_errors', 1);
ini_set('error_log', './error_log2');
?>
最奇怪的是,如果我犯了一个错误,例如写一个未初始化的变量,我仍然会在屏幕上看到错误!!!!
在我的error_log2文件中,我完全看不到任何内容!
我在我的本地Web服务器上尝试了该文件(我的Ubuntu上有Xampp)并且它运行正常:在屏幕上我什么都没看到,在我的error_log2文件中我看到了所有错误。
有人可以帮助我吗?
我认为在我拥有自己网站的网络服务器上,指令是在php.ini中设置的,我无法访问它。事实上,它是一个共享的Web服务器,可以免费托管。
如果是这样的话,我不允许使用像我写的那样的文件来运行。
你怎么看? 谢谢。