LAMP 中关于php错误日志配置的小问题
2016-01-28 13:50
429 查看
首先,php在LAMP中是作为一个模块被apache调用的,所有并没有单独的进程
php编译安装后,配置文件在源码包里面,将配置文件复制到指定的目录里
然后执行
看看配置文件是否已经识别
完成这两步之后然后开始正式配置php.ini
1.配置disable_function
2.配置php的错误日志
第一个display_errors如果打开的话,当php代码出错时,访问时会直接在浏览器上面显示错误信息,这样很不安全,除非是用于开发者调试,否则很容易被攻击者利用,建议关闭
logs_error = on 这个是打开日志记录的功能,打开后错误信息会保存到日志当中
error_log 这个很明显就是错误日志的路径了
error_reporting 这一项是指定记录错误日志的形式,配置文件里面有英文解释,可以按照自己需求去修改
最后再说说我在做实验时遇到的问题 : 配置完错误日志后,我把我的网页php代码故意改错了,然后用浏览器访问确实没有显示任何错误信息。但是当我去查看错误日志的时候却发现居然没有生成php_errors.log这个日志文件,后来上网查资料弄了好久发现原来是错误日志要设置权限的,然后我自己创建了php_errors.log这个日志文件,然后把该文件的访问权限修改为666,然后再刷新了下网页,错误日志就出来了。
也就是说:这个错误日志必须能让apache写入,而apache进程的用户是daemon,所以这个文件的权限必须要修改成daemon可写才行。
php编译安装后,配置文件在源码包里面,将配置文件复制到指定的目录里
cp /usr/local/src/php-5.3.28/php.ini-production /usr/local/php/etc/php.ini
然后执行
/usr/local/php/bin/php -i | grep php.ini
看看配置文件是否已经识别
完成这两步之后然后开始正式配置php.ini
1.配置disable_function
disable_functions = eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc_open,proc_close
2.配置php的错误日志
display_errors = Off logs_error = On error_log = /usr/local/php/logs/php_errors.log error_reporting = E_ALL | E_STRICT
第一个display_errors如果打开的话,当php代码出错时,访问时会直接在浏览器上面显示错误信息,这样很不安全,除非是用于开发者调试,否则很容易被攻击者利用,建议关闭
logs_error = on 这个是打开日志记录的功能,打开后错误信息会保存到日志当中
error_log 这个很明显就是错误日志的路径了
error_reporting 这一项是指定记录错误日志的形式,配置文件里面有英文解释,可以按照自己需求去修改
最后再说说我在做实验时遇到的问题 : 配置完错误日志后,我把我的网页php代码故意改错了,然后用浏览器访问确实没有显示任何错误信息。但是当我去查看错误日志的时候却发现居然没有生成php_errors.log这个日志文件,后来上网查资料弄了好久发现原来是错误日志要设置权限的,然后我自己创建了php_errors.log这个日志文件,然后把该文件的访问权限修改为666,然后再刷新了下网页,错误日志就出来了。
也就是说:这个错误日志必须能让apache写入,而apache进程的用户是daemon,所以这个文件的权限必须要修改成daemon可写才行。
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- LAMP源码环境搭建WEB服务器Linux+Apache+MySQL+PHP
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- Apache Isis 1.4.0 发布,领域驱动开发框架
- PHP数据库长连接mysql_pconnect的细节
- Php Installing An Expansion
- Linux快速构建apache web服务器
- Awstats处理多apache日志
- 安装perl模块小窍门
- 典型入侵日志分析
- PHP+Apache在Windows 9x下的安装和配置
- IIS 6 的 PHP 最佳配置方法
- Apache服务器配置全攻略