PHP配置(3)

3.1查看php配置文件得位置:

 PHP配置(3)

3.2定义date.timezone,减少警告:

php.ini为PHP的配置文件,可以看出其在/usr/local/php/etc/php.ini, 第一行的Warning为警告信息,可以忽略,取消这个警告需要编辑php.ini,

进入/usr/local/php/etc/php.ini找到date.timezone修改为下图

 PHP配置(3)

再次验证重启,再执行第一步命令,如下图

 PHP配置(3)

3.3限定disable_functions,禁用phpinfo,配置:

PHP有诸多内置的函数,有一些函数(比如exec )会直接调取Linux系统命令,如果开放将会非常危险。因此,基于安全考虑应该把一些存在安全风险的函数禁掉:

进入/usr/local/php/etc/php.ini找到disable_functions编辑如下图

 PHP配置(3)

再次验证重启

这些被禁掉的函数是不能在PHP代码中调用的,更改完php:ini后, 由于需要在httpd中调用PHP,所以还需要重启httpd服务使其生效。

3.4display_errors 配置:

进入/usr/local/php/etc/php.ini

搜索log_errors改为log_errors = On

log_errors可以设置为on或者off,如果想让:PHP记录错误日志,需要设置为on

搜索error_log改为error_log = /var/log/php/php_errors,log

error_1og设定错误日志路径

搜索error_reporting改为error_reporting = E_ALL & ~E_NOTICE

error_reporting设定错误日志的级别,E_ALL为所有类型的日志,不管是提醒还是警告都会记录。在开发环境下面设置为E_ALL,可以方便程序员排查问题,但也会造成日志记录很多无意义的内容,&符号表示并且,~表示排除,所以两个组合一起就是在E_ALL的基础上排除掉notice相关的日志

搜索display_errors改为display_errors = Off

display_ errors设置为on,则会把错误日志直接显示在浏览器里,这样对于用户访问来说体验不好,而且还会暴露网站的一些文件路径等重要信息,所以要设置为off

3.5记录错误日志:

 设置完php.ini,还需要一些额外操作

 PHP配置(3)

PHP配置(3)

3.6定义错误日志级别:

  看到出现状态码500,这说明我们访问的页面时存在错误的,此时需要查看php的错位u日志来判定错误原因(通过日志可以判断,test。Php文件第三行少了分号)

 PHP配置(3)

3.7open_basedir配置

在php.ini中设置open_basedir

进入/usr/local/php/etc/php.ini,搜索open_basedir改为下图

 PHP配置(3)

因为已经限制php只能在/tmp和/data/wwwroot/www.123.com两个目录下面活动,所以拿aming.com来验证

 PHP配置(3)

3.8为虚拟主机配置open_basedir

在httpd.conf配置,进入/usr/local/apache2.4/conf/extra/httpd-vhosts.conf,编辑如下(起作用的就是这句php_ admin. _value, 它可以定义php.ini里面的参数,除此之外像error_ 1og之类的也可以定义。这样就可以实现,一个虚拟主机定义一个open_basedir)

 PHP配置(3)

3.9PHP扩展模块安装

 查看php都加载了哪些功能模块,命令:/usr/local/php/bin/php -m

安装php的redis扩展模块

cd /usr/local/src/

wget http://pecl.php.net/get/redis-2.2.5.tgz 下载

tar zxvf redis-2.2.5.tgz  解压

mv redis-2.2.5.tgz phpredis-develop.zip  改名

cd phpredis-develop/  进入

 PHP配置(3)

yum install –y autoconf

/usr/local/php/bin/phpize  再次执行

 PHP配置(3)

make && make install   

make install的时候会把编译好的redis.so放到这个目录下面,这个目录是扩展模块存放目录

  /usr/local/php/bin/php -i |grep extension_dir

查看扩展模块存放目录,我们可以在php.ini中自定义该路径

 PHP配置(3)

vim进入/usr/local/php/etc/php.ini 在文件最后一行增加一行配置,然后再次验证重启

 PHP配置(3)

 PHP配置(3)