什么是PHP
PHP 是一种服务器端脚本语言。与客户端脚本语言相比,服务器端脚本语言只能在服务器上运行。PHP 脚本在服务器上执行,生成 HTML 文档并将其发送到客户端浏览器。使用 PHP,可以动态地生成 Web 页面。
为什么会出现“It is not safe to rely on the system…”错误提示?
一般情况下,这个错误的出现和 PHP 的编译选项的设置有关。对于 PHP 运行时出现的错误,需要查找与该错误相关的信息,以便确定问题的原因。在 PHP 运行时出现错误时,通常会生成错误报告。此错误报告包含有关错误的详细信息,包括类型、消息和文件位置。在这个错误提示中,主要是因为开启了php.ini配置文件中的display_errors选项,而导致错误提示输出到了浏览器页面中,对于开发和测试时很有用,但在实际环境中却可能存在潜在的安全问题。
如何解决这个错误提示?
方法一:关闭display_errors选项
首先,在实际生产环境中,我们应该关闭php.ini文件中的display_errors选项,以防敏感信息被输出到页面中。可以通过修改php.ini文件或者使用htaccess文件来关闭该选项:
ini_set('display_errors', 'Off');
error_reporting(E_ALL);
修改php.ini文件:找到display_errors选项,将它的值设置为Off:
display_errors = Off
如果您无法修改php.ini文件,可以通过在PHP脚本中设置以下选项来关闭display_errors:
ini_set('display_errors', 'Off');
error_reporting(0);
方法二:将错误日志写入文件而不是显示在屏幕上
在生产环境中,最好将错误信息记录到日志文件中,而不是在浏览器中输出。 在php.ini中可以配置错误日志的位置和格式,例如:
error_log = /var/log/php_errors.log
如果您无法修改php.ini,可以在PHP脚本中写以下代码:
ini_set("log_errors", 1);
ini_set("error_log", "/tmp/php-error.log");
您可以将错误日志文件放在网站以外的位置,从而更安全地保存它们。
方法三:修复错误
最好的方式当然是修复产生这个错误提示的代码。如果您的 PHP 代码中有错误,那么最好修复这些错误,这样就可以避免出现所有错误。使用调试工具或者日志工具来帮助定位及修复你的PHP代码中的问题。