本文作者:阿豪

PHP的一些相关配置

阿豪 2020-02-08 310
PHP的一些相关配置摘要: 查看php配置文件位置,最准确的办法是在站点创建php探针# /usr/local/php/bin/php -i|grep -i "loaded configuratio...

查看php配置文件位置,最准确的办法是在站点创建php探针

# /usr/local/php/bin/php -i|grep -i "loaded configuration file"    

date.timezone = Asia/shanghai 定义时区

disable_functions   //限制一些php函数

disable_functions = eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec

,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc

_close,phpinfo

display_errors  访问时的错误信息,如果不允许访问,显示的就是白页

;   Default Value: On

;   Development Value: Off  两个版本还有其他,开启或关闭。

;   Production Value: Off      开启单个时,前面的分号 要去掉。

; http://php.net/display-errors

display_errors = On 这里关闭,将全部关闭。

error_log = /tmp/php_errors.log  //定义错误日志的位置。

测试:可以看到生成了php_error.log。它的属主和属组都是deamon,这个日志是以httpd这个进程的身份生成的。有时候定义了一个错误日志,但是错误日志一直没有生成,就要检查一下错误日志所在的目录有没有写权限。

error_reporting = E_ALL定义日志的级别

默认是E_ALL,全部记录。生产环境中是Show all errors, except for notices

open_basedir

作用:将网站限定在指定目录里,就算该站点被黑,黑客也只能在该目录下面有作为,而不能动其他的目录。如果服务器上只有一个站点,那么可以直接在php.ini中设置open_basedir参数。如果服务器上跑的站点比较多,那在php.ini设置就不合适了,因为php.ini中只能定义一次,也就是说所有站点都一起定义限定的目录,那这样就起不到隔离多个站点的目的。如何在php.ini中设置open_basedir:

# vim /usr/local/php5/etc/php.ini

open_basedir = /data/wwwroot/ahao1.com:/tmp 针对全部站点的。

# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf也可以在虚拟主机配置文件设置

php_admin_value open_basedir "/data/wwwroot/ahao1.com:/tmp/"

解析:php_admin_value:可以定义php.ini里面的一些参数,比如error_log等。后面跟参数,然后指定的目标路径。


文章版权及转载声明

作者:阿豪本文地址:https://www.ahaoyw.com/article/84.html发布于 2020-02-08
文章转载或复制请以超链接形式并注明出处阿豪运维

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏