Where does PHP store the error log? – Stack Overflow

apache2 – Where are the Apache and PHP log files? – Ask Ubuntu

自己此处的/var/log/下面没有apache2或apache

2.通过:

phpinfo()

去找error_log

结果得到:

error_log

no value

no value

3.所以去设置php.ini的log日志:

【已解决】CentOS 7中PHP配置文件php.ini的放在哪个位置

4.然后去编辑php.ini,添加对应的error_log

vi /etc/php.ini

1

2

3

4

5

6

7

; Log errors to specified file. PHP's default behavior is to leave this value

; empty.

; http://php.net/error-log

; Example:

;error_log = php_errors.log

; Log errors to syslog (Event Log on NT, not valid in Windows 95).

;error_log = syslog

1

2

3

4

5

6

7

; Log errors to specified file. PHP's default behavior is to leave this value

; empty.

; http://php.net/error-log

; Example:

error_log = /var/log/php_errors.log

; Log errors to syslog (Event Log on NT, not valid in Windows 95).

;error_log = syslog

5.同时把:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

; error_reporting

;   Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED

;   Development Value: E_ALL

;   Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT

......

;                     and forward compatibility of your code

; E_CORE_ERROR      - fatal errors that occur during PHP's initial startup

; E_CORE_WARNING    - warnings (non-fatal errors) that occur during PHP's

;                     initial startup

; E_COMPILE_ERROR   - fatal compile-time errors

; E_COMPILE_WARNING - compile-time warnings (non-fatal errors)

; E_USER_ERROR      - user-generated error message

; E_USER_WARNING    - user-generated warning message

; E_USER_NOTICE     - user-generated notice message

; E_DEPRECATED      - warn about code that will not work in future versions

;                     of PHP

; E_USER_DEPRECATED - user-generated deprecation warnings

;

; Common Values:

;   E_ALL (Show all errors, warnings and notices including coding standards.)

;   E_ALL & ~E_NOTICE  (Show all errors, except for notices)

;   E_ALL & ~E_NOTICE & ~E_STRICT  (Show all errors, except for notices and coding standards warnings.)

;   E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR  (Show only errors)

; Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED

; Development Value: E_ALL

; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT

; http://php.net/error-reporting

error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT

1

2

#error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT

error_reporting = E_ALL | E_STRICT

6.再去添加读写权限:

cd  /var/log

1

2

3

4

5

6

7

8

9

root@chantyou:log # pwd

/var/log

root@chantyou:log # touch /var/log/php_errors.log

root@chantyou:log # ls /var/log/php_errors.log -l

-rw-r--r-- 1 root root 0 Jul 28 16:03 /var/log/php_errors .log

root@chantyou:log # chmod +rw /var/log/php_errors.log

root@chantyou:log # ls /var/log/php_errors.log -l

-rw-r--r-- 1 root root 0 Jul 28 16:03 /var/log/php_errors .log

root@chantyou:log #

此处由于都是root用户,所以和没添加一样。。。

7.然后重启apache2:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

root@chantyou:log # service httpd restart

Redirecting to /bin/systemctl restart  httpd.service

root@chantyou:log # service httpd status

Redirecting to /bin/systemctl status  httpd.service

httpd.service - The Apache HTTP Server

Loaded: loaded ( /usr/lib/systemd/system/httpd .service; disabled)

Active: active (running) since Tue 2015-07-28 16:05:13 CST; 7s ago

Process: 6858 ExecStop= /bin/kill -WINCH ${MAINPID} (code=exited, status=0 /SUCCESS )

Process: 2224 ExecReload= /usr/sbin/httpd $OPTIONS -k graceful (code=exited, status=0 /SUCCESS )

Main PID: 6864 (httpd)

Status: "Processing requests..."

CGroup: /system .slice /httpd .service

├─6864 /usr/sbin/httpd -DFOREGROUND

├─6866 /usr/sbin/httpd -DFOREGROUND

├─6867 /usr/sbin/httpd -DFOREGROUND

├─6868 /usr/sbin/httpd -DFOREGROUND

├─6869 /usr/sbin/httpd -DFOREGROUND

└─6870 /usr/sbin/httpd -DFOREGROUND

Jul 28 16:05:13 chantyou.com httpd[6864]: AH00548: NameVirtualHost has no effect and will be removed in the next release /e ...conf:1

Jul 28 16:05:13 chantyou.com httpd[6864]: AH00558: httpd: Could not reliably determine the server's fully qualified domain ...essage

Jul 28 16:05:13 chantyou.com systemd[1]: Started The Apache HTTP Server.

Hint: Some lines were ellipsized, use -l to show in full.

root@chantyou:log #

8.看看有无log输出了:

1

2

root@chantyou:log # tail /var/log/php_errors.log

root@chantyou:log #

结果空的。

那就继续去测试其他php,如果出错了,希望此处可以看到错误的log日志。

9.然后,也确定了phpinfo()中是可以看到有错误日志的配置了:

error_log

/var/log/php_errors.log

/var/log/php_errors.log

暂时反正是设置了PHP的错误日志,但是实际上后续的一些错误,比如代码的语法错误,结果却没有任何输出。

感觉可能还是某些地方禁止了错误输出。

估计是那个:

display_errors

对于服务器上面运行的PHP代码,期间的log输出到哪里。想要去查看对应的log,找到代码无法运行的原因。【折腾过程】1.搜:check php logcentos check php log参考:Where does PHP store the error log? – Stack Overflowapache2 – Where are the Apache and... Where does PHP store the error log ? – Stack Overflow apache2 – Where are the Apache and PHP log files? – Ask Ubuntu 自己此处的/var/ log /下面没有apache2或ap. 如上所述,tail命令是实时显示 日志 文件 的最常用解决方案。但是,显示该 文件 的命令有两个版本,如下面的示例所示。 在第一个示例 ,命令tail需要-f参数来跟踪 文件 的内容。 $ sudo tail -f /var/ log /apache2/ac.
PHP 是一种服务器端脚本语言,可以用来实现记录系统操作的 日志 。 要记录 日志 ,你需要做的第一步是打开一个 日志 文件 。你可以使用 PHP 的 fopen 函数打开一个 文件 ,并使用 fwrite 函数向 文件 写入数据。例如: $ log _file ='/path/to/ log /file. log '; $ log _entry = 'This is a log entry'; // Open the log f...
对于我们做 php 开发的人员,上了生产环境,一定要把相关debug,display_errors错误提示等关掉。谁还难免不犯个错呢?这样能防止非致命性报错下,导致项目路径、数据库等 信息 泄漏。 问:那么问题来了,我们在生产该如何 查看 php 等相关错误呢? 答:记录到错误 日志 里。error. log (或直接发送到sys log ) 下边就如何配置和 查看 日志 作出简单叙述。
nginx与apache不一样,在apache 可以直接指定 php 的错误 日志 ,那样在 php 执行 的错误 信息 就直接输入到 php 的错误 日志 ,可以方便查询。 在nginx 事情就变成了这样:nginx只对页面的访问做access记录 日志 。不会有 php 的error log 信息 。nginx把对 php 的请求发给 php -fpm fastcgi进程来处理,默认的 php -fpm只会输出 php -fpm的错误 信息