仅通过 htaccess 在 PHP 中启用错误显示

我在网上测试一个网站。

现在,没有显示错误(但我知道它们存在)。

我只能访问 .htaccess文件。

How do I make all errors to display using my .htaccess file?


I added these lines to my .htaccess file:

php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on

现在页面显示:

内部服务器错误

420931 次浏览

. htaccess:

php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on
php_flag log_errors on
php_value error_log /home/path/public_html/domain/PHP_errors.log
php_flag display_errors on

打开错误的实际显示。

To set the types of errors you are displaying, you will need to use:

php_value error_reporting <integer>

与此页中的整数值组合在一起: http://php.net/manual/en/errorfunc.constants.php

注意,如果对整数使用 -1,它将显示所有错误,并在添加新类型的错误时作为将来的证据。

我想在现有的答案中加入更多的细节:

# PHP error handling for development servers
php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on
php_flag log_errors on
php_flag ignore_repeated_errors off
php_flag ignore_repeated_source off
php_flag report_memleaks on
php_flag track_errors on
php_value docref_root 0
php_value docref_ext 0
php_value error_log /full/path/to/file/php_errors.log
php_value error_reporting -1
php_value log_errors_max_len 0

对日志文件授予777或755权限,然后添加代码

<Files php_errors.log>
Order allow,deny
Deny from all
Satisfy All
</Files>

在.htaccess 的末尾。 This will protect your log file.

这些选项适合于开发服务器。对于生产服务器,不应该向最终用户显示任何错误。因此,将显示标志更改为 关掉

有关详细信息,请点击以下链接: Advanced PHP Error Handling via htaccess

如果只想看到致命的运行时错误:

php_value display_errors on
php_value error_reporting 4

这对我有用(参考文献) :

# PHP error handling for production servers
# Disable display of startup errors
php_flag display_startup_errors off


# Disable display of all other errors
php_flag display_errors off


# Disable HTML markup of errors
php_flag html_errors off


# Enable logging of errors
php_flag log_errors on


# Disable ignoring of repeat errors
php_flag ignore_repeated_errors off


# Disable ignoring of unique source errors
php_flag ignore_repeated_source off


# Enable logging of PHP memory leaks
php_flag report_memleaks on


# Preserve most recent error via php_errormsg
php_flag track_errors on


# Disable formatting of error reference links
php_value docref_root 0


# Disable formatting of error reference links
php_value docref_ext 0


# Specify path to PHP error log
php_value error_log /home/path/public_html/domain/PHP_errors.log


# Specify recording of all PHP errors
# [see footnote 3] # php_value error_reporting 999999999
php_value error_reporting -1


# Disable max error string length
php_value log_errors_max_len 0


# Protect error log by preventing public access
<Files PHP_errors.log>
Order allow,deny
Deny from all
Satisfy All
</Files>