情节:首先,我有一个有GodDaddy的网站,他们很酷的CPanel和更多很酷的停机时间,我转移到Digital Ocean VPS。
问题:但是当我将文件传输到VPS时,我遇到了一些常见/不常见的PHP错误。使用godaddy时我没有看到任何错误。其中一些是。
Notice: Undefined variable: q in /srv/users/someuser/apps/video/public/config.php on line 7
和
Notice: curl_setopt(): CURLOPT_SSL_VERIFYHOST no longer accepts the value 1, value 2 will be used instead
我现在正在使用PHP 5.4(在nginx上,LEMP安装)。任何隐藏这些错误的方法,因为即使出现这些错误,我的网站也能完美运行。
答案 0 :(得分:6)
我会考虑修复问题,而不是抑制通知和错误消息。现在可能需要做更多的工作,但我认为最终有一个完整的运行和运行的程序是值得的 - 如果Digital Ocean更新库,你的代码将会中断。
Notice: Undefined variable: q in /srv/users/someuser/apps/video/public/config.php on line 7
此通知告诉您存在未设置的变量以及在哪个文件中以及在哪行中。所以你应该去看看这个文件,看看第7行发生了什么,并尝试修复它。看起来根本不需要$ q,所以如果其他地方需要变量,请尝试对该行进行注释或深入查看文件。
Notice: curl_setopt(): CURLOPT_SSL_VERIFYHOST no longer accepts the value 1, value 2 will be used instead
不推荐使用值为1的CURLOPT_SSL_VERIFYHOST,从libcurl 7.28.1开始将删除它。建议使用值2。
考虑查看正在运行curl的文件并从
更改行CURLOPT_SSL_VERIFYHOST => true or CURLOPT_SSL_VERIFYHOST => 1
为:
CURLOPT_SSL_VERIFYHOST => 2,
看起来GoDaddy使用了不同库的过时(较旧)版本。
curlopt设置现在可能是一个警告,但一旦Digital Ocean更新其库或您更新它们就会中断您的程序。
答案 1 :(得分:5)
答案 2 :(得分:3)
在脚本顶部添加以下内容
error_reporting(0);
答案 3 :(得分:0)
在php.ini文件中,您可以考虑两个变量。第一个是捕获的错误级别,第二个是是否在屏幕上显示它们。
error_reporting = E_ALL & ~E_DEPRECATED
display_errors = Off
调整这些将为您提供所需的输出。