php配置

php基础配置
查看php配置文件的位置
#/usr/local/php/bin/php -i |grep -i “loaded configuration file”

将php.ini-production 拷贝到phpi.ni
# cp /usr/local/src/php-5.6.30/php.ini-production /usr/local/php/etc/php.ini
拷贝完成以后就可以查看php文件的位置信息了
# /usr/local/php/bin/php -i |grep -i “loaded configuration file”
切换到docs的子目录下编辑123.php的配置文件使其显示phpinfo
# cd /usr/local/apache2.4/docs/www.111.com
# vim 123.php
<?php
phpinfo();
?>
配置完成以后打开浏览器在这里插入图片描述
#vim /usr/local/php/etc/php.ini

搜索disable_functions,编辑如下:
 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,1eak,popepassthru,stream_socket_server,popen,proc_open,proc_close

disable_functions表示禁用这些函数。

定义date.timezone,减少警告/

# vim /usr/local/php/etc/php.ini
找到date. timezone设置如下:
 date.timezone = Asia/Shanghai

日志的相关配置
例如,在disable_functions,定义禁用phpinfo函数,

 # vim /usr/local/php/etc/php.ini
 disable_functions=phpinfo,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,1eak,popepassthru,stream_socket_server,popen,proc_open,proc_close

浏览器访问www.111.com/123.php,显示空白在这里插入图片描述
配置error_log:

# vim /usr/local/php/etc/php. ini
//记录错误日志:搜索log_errors, 改成如下
log_errors=On
 //记录错误日志目录位置:搜索error. log,改为
 error_log = /tmp/php_errors.log
# /usr/local/apache2.4/bin/apachectl -t
Syntax OK
# /usr/local/apache2.4/bin/apachectl graceful
配置完php.ini,查看日志
# tail -f /tmp/php_errors.log (这里需要自己建立一个用于存放php错误日志的文件夹 /tmp/php_errors.log

配置open_basedir**

open_basedir将网站限定在指定的目录,做目录的隔离
先在php.ini中设置open_basedir:
  # vim /usr/local/php/etc/php.ini 
 //搜索open_basedir,改成如下
 open_basedir = /usr/local/apache2.4/docs/www.111.com/admin:/tmp

因为限制了PHP只能在/tmp和/usr/local/apache2.4/docs/www.111.com/admin两个目录下面活动,演示如下:
将/usr/local/php/etc/php.ini中open_basedir注释掉

     # /usr/local/apache2.4/bin/apachectl -t
       Syntax OK
    # /usr/local/apache2.4/bin/apachectl graceful

打开浏览器依次访问http://www.111.com/admin/123.php、http://www.111.com/upload/123.php
在这里插入图片描述
在这里插入图片描述
虚拟主机配置open_basedir

将/usr/local/php/etc/php.ini中open_basedir注释掉,编辑虚拟主机配置open_basedir

编辑虚拟主机配置open_basedir

#vim /usr/local/apache2 .4/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/usr/local/apache2.4/docs/www.111.com"
ServerName www.111.com
ServerAlias 111.com
php_admin_value     open_basedir "/usr/local/apache2.4/docs/www.111.com/admin/:tmp/"
ErrorLog "logs/111.com-error_log"
CustomLog "logs/www.111.com-access_log" combined
</VirtualHost>

//起作用的是php_admin_value 配置完成以后使用-t、graceful重新读取 刷新配置
使用curl命令查看

    #curl -x127.0.0.1:80 www.111.com/admin/123.php 
  
         Hello World!
         
   # curl -x127.0.0.1:80 www.111.com/upload/123.php -I
   
   HTTP/1.0 500 Internal Server Error
   Date: Tue, 09 Mar 2021 08:41:38 GMT
  Server: Apache/2.4.46 (Unix) PHP/5.6.30
   X-Powered-By: PHP/5.6.30
   Connection: close
   Content-Type: text/html; charset=UTF-8

php扩展模块安装

使用 /usr/local/php/bin/php -m 即可查看php加载了那些模块

切换到src目录使用源码包安装一个新的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 phpredis-develop

cd phpredis-develop
yum install -y autoconf 安装一个依赖 如果有可以忽略
usr/local/php/bin/phpize//目的生成configure文件在这里插入图片描述执行 ./configure --with-php-config=/usr/local/php/bin/php-config
执行完成以后使用echo $? 查看返回值 确认无误后使用make && make install

/make install时候编译好的就会放在这个目录里

Installing shared extensions: /usr/local/php/lib/ php/extensions/ no-debug- zts - 20131226/

ls /usr/local/php/lib/php/extensions/no-debug-zts-20/可以查看到rdis.so

编辑配置文件 vim /usr/local/php/etc/php.ini
增加一行配置extension = redis.so

/usr/local/php/bin/php -m |grep redis

//查看是否加载了redis模块
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值