php相关配置

简介:

查看php配置文件位置
/usr/local/php/bin/php -i|grep -i "loaded configuration file" 
或者phpinfo();
但是有些情况下使用-i是不准的。
如果想找的更准。比如找11.com,那么可以在11.com的根目录下创建phpinfo()文件。浏览器访问它。查看配置文件

cp -r /usr/local/src/php-5.6.30/php.ini-production /usr/local/php/etc/php.ini
vi /usr/local/php/etc/php.ini //搜索disable_functions

date.timezone //定义时区
date.timezone =Asia/shanghai

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 
在生产环境中会把phpinfo禁掉。因为有时候不小心写了一个phpinfo文件,上传上去被黑客发现。能够看到系统的目录。不安全
eval:一句话木马使用了该函数如果把这个函数禁了,即使上传了木马也没办法解析

日志相关:
error_log, log_errors, display_errors, error_reporting

display_errors = On //会把错误信息直接显示在浏览器上

(生产环境该参数改成Off,为了避免暴露信息)但是有一个问题,就是页面什么都不显示(白页)。那么还需要配置错误日志。
log_errors = On //表示错误日志打开状态
error_log = /tmp/php_errors.log //定义错误日志所在位置
还需要定义error_log的级别。如果级别很高的话,很严谨的话,只会记录一些比较严峻的错误,不太严峻的就不记录,比如警告等、所以放松些
error_reporting //定义日志的级别
生产环境使用
E_ALL & ~E_NOTICE (Show all errors, except for notices)

模拟:把phpinfo函数禁掉。
1.phpinfo放入disable_functions里
2.display_errors = Off
3.log_errors = On
4.error_log = /tmp/php_errors.log
5./usr/local/apache2.4/bin/apachectl -t && graceful
6.ll /tmp/
srwxrwxrwx. 1 mysql mysql 0 12月 11 18:39 mysql.sock
-rw-r--r--. 1 daemon daemon 290 12月 11 21:23 php_errors.log
7.cat /tmp/php_errors.log 
[11-Dec-2017 21:23:49 Asia/shanghai] PHP Warning: phpinfo() has been disabled for security reasons in /data/wwwroot/discuz2/lsx/1.php on line 2

php_errors.log的属主实际是httpd的属主daemon。因为这个日志是以daemon这个进程的身份创建的。当你定义了一个日志,但是日志始终没有生成,就要看一下定义的目录有没写权限,而且写文件的进程是这个进程。

为了保守起见,可以把这个文件创建好/tmp/php_errors.log,在授权777权限
grep error_log /usr/local/php/etc/php.ini
error_log = /tmp/php_errors.log
;error_log = syslog




本文转自 虾米的春天 51CTO博客,原文链接:http://blog.51cto.com/lsxme/2054743,如需转载请自行联系原作者

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
3月前
|
关系型数据库 MySQL API
|
5月前
|
PHP
windows11 vscode 配置 php环境
windows11 vscode 配置 php环境
43 0
|
6月前
|
PHP Apache
PHP环境搭建(配置php模块到apache服务器)
PHP环境搭建(配置php模块到apache服务器)
65 0
|
7月前
|
开发框架 应用服务中间件 PHP
Mac Nginx 关联 php 详细配置以及常见错误
Mac Nginx 关联 php 详细配置以及常见错误
141 1
|
7月前
|
Apache PHP 数据安全/隐私保护
(MAC)PHP Apache 安装与配置
(MAC)PHP Apache 安装与配置
222 0
|
27天前
|
应用服务中间件 Linux PHP
Linux下安装php环境并且配置Nginx支持php-fpm模块
Linux下安装php环境并且配置Nginx支持php-fpm模块
28 0
|
7月前
|
域名解析 Apache PHP
PHP Apache - 多站点虚拟主机配置
PHP Apache - 多站点虚拟主机配置
290 0
|
3月前
|
安全 Linux 测试技术
PHP环境配置和验证
PHP环境配置和验证
31 0
|
4月前
|
应用服务中间件 Linux PHP
百度搜索:蓝易云【在centos中配置nginx+php的环境教程。】
请注意,上述步骤是基本的配置指南,实际操作中可能会有特定的需求和配置。建议参考Nginx和PHP官方文档或其他详细教程以获得更全面和准确的信息。
45 0