nginx中如何输出php错误日志文件

后端开发   发布日期:2024年05月08日   浏览次数:301

这篇文章主要介绍“nginx中如何输出php错误日志文件”,在日常操作中,相信很多人在nginx中如何输出php错误日志文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”nginx中如何输出php错误日志文件”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

配置 Nginx

要输出 PHP 错误日志文件,我们需要在 Nginx 的配置文件中添加一些配置项。在 CentOS 系统上,Nginx 的配置文件通常位于 /etc/nginx/nginx.conf。在文件中找到 http 模块的配置段,一般位于文件的顶部,添加以下的配置项:

  1. http {
  2. ...
  3. server {
  4. ...
  5. location ~ .php$ {
  6. fastcgi_pass 127.0.0.1:9000;
  7. fastcgi_index index.php;
  8. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  9. include fastcgi_params;
  10. # error log
  11. fastcgi_param PHP_VALUE "error_log=/var/log/nginx/php_errors.log";
  12. }
  13. ...
  14. }
  15. ...
  16. }

location ~ .php$ 表示只有在访问以 .php 结尾的 URL 时才会使用到该配置项。fastcgi_pass 指定了 PHP 的 FastCGI 服务器的地址和端口号。fastcgi_param 用于设置 PHP 的参数,其中 SCRIPT_FILENAME 指定 PHP 脚本的路径和文件名。include fastcgi_params 告诉 Nginx 使用默认的 FastCGI 参数。最后一行添加了 fastcgi_param PHP_VALUE "error_log=/var/log/nginx/php_errors.log";,表示将 PHP 的错误信息记录到 /var/log/nginx/php_errors.log 文件中。

创建日志文件

在配置完 Nginx 后,我们需要创建一个日志文件,用于记录 PHP 的错误信息。假设我们要将日志文件保存到 /var/log/nginx/php_errors.log,可以使用以下命令创建文件:

  1. sudo touch /var/log/nginx/php_errors.log

然后使用以下命令修改文件的属主和权限:

  1. sudo chown nginx:nginx /var/log/nginx/php_errors.log
  2. sudo chmod 644 /var/log/nginx/php_errors.log

测试

测试时,可以创建一个 PHP 脚本并出现错误,例如:

  1. <?php
  2. echo 1/0;
  3. ?>

将这个脚本保存为 test.php,然后将其放置在 Nginx 的 Web 根目录下,例如 /usr/share/nginx/html/test.php。在浏览器中访问 http://localhost/test.php,将会看到一个 PHP 错误。然后使用以下命令查看日志文件内容:

  1. sudo tail /var/log/nginx/php_errors.log

如果一切正常,应该能看到类似如下的错误信息:

  1. [17-Oct-2021 20:52:42 UTC] PHP Warning: Division by zero in /usr/share/nginx/html/test.php on line 2

以上就是nginx中如何输出php错误日志文件的详细内容,更多关于nginx中如何输出php错误日志文件的资料请关注九品源码其它相关文章!