我可以隐藏路径在php错误使用.htaccess


Can I hide the path in php error using .htaccess

我可以在php错误中使用。htaccess隐藏路径吗

的例子:

Notice: Undefined variable: hello in C:'xampp'htdocs'mysite'index.php on line 3

我想隐藏路径使用。htaccess或打印一些东西让我知道,如果有一个错误没有打印页面的路径:

Notice: Undefined variable: hello on line 3

Notice: Undefined variable: hello

There is error in your page
<标题>编辑:

我把这些行放在我的。htaccess中但我无法访问我的网站。出现"内部服务器错误"错误。

# supress php errors
php_flag display_startup_errors off
php_flag display_errors off
php_flag html_errors off
php_value docref_root 0
php_value docref_ext 0

PHP的错误信息不是针对用户的,而是针对开发人员的。

因此,对于生产环境,您应该禁用display_errors以避免信息泄露:

注意: [display_errors]是支持您的开发的特性,不应该在生产系统(例如连接到internet的系统)上使用。

相反,您应该向用户显示通用的错误消息,这些消息不揭示任何内部信息,只记录错误消息(参见log_errorserror_log):

注意:强烈建议您使用错误记录来代替生产网站上的错误显示。

如果你真的想修改PHP的错误消息,你可以使用set_error_handler来设置一个自定义的错误处理程序。

参见OWASP的开发指南关于"错误处理,审计和日志记录"的更多信息。

您不能更改消息:这些消息是由PHP生成的,它们就是这样的。


但是你可以阻止它们显示给你网站的用户,并且仍然记录它们,供你自己使用。
请参见:

  • display_errors :防止错误显示到页面输出
  • log_errors :表示错误应该记录到文件
  • error_log :指定将错误记录到哪个文件。


当然,这并不妨碍您尽可能多地修复引起通知/警告/错误的原因;-)

扔掉那些没用的东西。

php_flag display_errors 0

就足够了。

如果错误仍然存在,检查服务器的error_log中的错误消息