Lamp:php.ini配置文件详解+扩展模块安装
2017-02-19 10:54
791 查看
1php.ini配置文件详解
PHP配置文件的存放处:
# /usr/local/php/etc/php.ini
如找不到:
# /usr/local/php/bin/php -i |head 则会显示其内容地址含其中Loaded Configuration File => /usr/local/php/etc/php.ini
php以 封号 ; 为注释掉的符号
(1)禁用函数
disable_functions
[root@yiqiang ~]# vim /usr/local/php/etc/php.ini
找到 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)错误日志 500的错误一般都是php脚本程序 有问题
打开错误日志,不暴露错误信息。
[root@yiqiang ~]# vim /usr/local/php/etc/php.ini
display_errors =
Off (默认值) 如果改成on ,则会在网页浏览面显示错误提示,相反也会泄露信息安全。
log_errors=On
(默认 打开错误日志)
error_log=/usr/local/php/logs/php_errors.log (更改编写错误日志所在的路径)
error_reporting=E_ALL & ~E_NOTICE (更改日志级别)
按:wq保存退出,查看路径是否存在,如果不存在,则
[root@yiqiang ~]# mkdir /usr/local/php/logs 创建目录
[root@yiqiang ~]# chmod 777 /usr/local/php/logs/ 更改其权限,因为生成日志的是Apache用户
[root@yiqiang ~]# cat /usr/local/php/logs/php_errors.log
查看错误日志
(3)限制访问 也是网页的一个安全选项
防止不合法访问造就的一系列影响后果
---------------------------------------------------------------------------------------------
1用法
[root@yiqiang ~]# vim /usr/local/php/etc/php.ini ( php配置文件)
找到open_basedir添加如下:
open_basedir = /data/www:/tmp
加载 apache graceful ,刷新页面。即可。 测试,试试写错了会是什么结果
----------------------------------------------------------------------------
2用法
当多个站点时,配置apache,在Apache中可以区分不同的虚拟主机
[root@yiqiang ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf ( Aapache配置文件)
每一个虚拟主机使用一个open_basedir, 找到第二个<VirtualHost *:80> 加入如下一行内容:
php_admin_value open_basedir "/data/www/:/tmp/"
-------------------------------------------------------------------------------------
一般用法二选其一:1用法同用 lamp 2用法一般用于apache上,便于区分那个主机出了问题
2.php扩展模块如何安装
[root@yiqiang ~]# /usr/local/php/bin/php -m 查看php的模块。
如果发现php少了一俩个模块 ,1需要重新编译,找到php源码包。 2.使用动态的方式加载进来
[root@yiqiang ~]# cd /usr/local/src/php-5.5.38/ext/ 模块包在ext/下面,如果没有就需要下载模块包。
比如要安装curl包,
[root@yiqiang ~]# /usr/local/php/bin/php -m |grep -i curl 查看有否安装
[root@yiqiang curl]# cd //usr/local/src/php-5.5.38/ext/curl
[root@yiqiang curl]# ls
[root@yiqiang curl]# /usr/local/php/bin/phpize 工具:生成Configuring 可执行文件
[root@yiqiang curl]# ls 多出许多Configuring 可执行文件
[root@yiqiang curl]# ./configure --with-php-config=/usr/local/php/bin/php-config(一般不会有什么错误有就是少库)
[root@yiqiang curl]# make
[root@yiqiang curl]# make install
会生成的文件放在下面
/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
[root@yiqiang curl]# ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/curl.so
[root@yiqiang curl]#vim /usr/local/php/etc/php.ini
找到 并加入extension=列,
vim :nohl 去掉高亮
extension=curl.so
按:wq保存退出
[root@yiqiang curl]# /usr/local/php/bin/php -m 加载,查看是否有这个模块curl,没有查看错误日志也会有显示
[root@yiqiang curl]# tail /usr/local/php/logs/php_errors.log 日志也没有,并错误日志也不显示:表示明显的语法错误。
即是完成动态加载!
查询动态加载有哪些:
[root@yiqiang extensions]# grep '^extension=' /usr/local/php/etc/php.ini
例如:memcache redis apc 练习
PHP配置文件的存放处:
# /usr/local/php/etc/php.ini
如找不到:
# /usr/local/php/bin/php -i |head 则会显示其内容地址含其中Loaded Configuration File => /usr/local/php/etc/php.ini
php以 封号 ; 为注释掉的符号
(1)禁用函数
disable_functions
[root@yiqiang ~]# vim /usr/local/php/etc/php.ini
找到 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)错误日志 500的错误一般都是php脚本程序 有问题
打开错误日志,不暴露错误信息。
[root@yiqiang ~]# vim /usr/local/php/etc/php.ini
display_errors =
Off (默认值) 如果改成on ,则会在网页浏览面显示错误提示,相反也会泄露信息安全。
log_errors=On
(默认 打开错误日志)
error_log=/usr/local/php/logs/php_errors.log (更改编写错误日志所在的路径)
error_reporting=E_ALL & ~E_NOTICE (更改日志级别)
按:wq保存退出,查看路径是否存在,如果不存在,则
[root@yiqiang ~]# mkdir /usr/local/php/logs 创建目录
[root@yiqiang ~]# chmod 777 /usr/local/php/logs/ 更改其权限,因为生成日志的是Apache用户
[root@yiqiang ~]# cat /usr/local/php/logs/php_errors.log
查看错误日志
(3)限制访问 也是网页的一个安全选项
防止不合法访问造就的一系列影响后果
---------------------------------------------------------------------------------------------
1用法
[root@yiqiang ~]# vim /usr/local/php/etc/php.ini ( php配置文件)
找到open_basedir添加如下:
open_basedir = /data/www:/tmp
加载 apache graceful ,刷新页面。即可。 测试,试试写错了会是什么结果
----------------------------------------------------------------------------
2用法
当多个站点时,配置apache,在Apache中可以区分不同的虚拟主机
[root@yiqiang ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf ( Aapache配置文件)
每一个虚拟主机使用一个open_basedir, 找到第二个<VirtualHost *:80> 加入如下一行内容:
php_admin_value open_basedir "/data/www/:/tmp/"
-------------------------------------------------------------------------------------
一般用法二选其一:1用法同用 lamp 2用法一般用于apache上,便于区分那个主机出了问题
2.php扩展模块如何安装
[root@yiqiang ~]# /usr/local/php/bin/php -m 查看php的模块。
如果发现php少了一俩个模块 ,1需要重新编译,找到php源码包。 2.使用动态的方式加载进来
[root@yiqiang ~]# cd /usr/local/src/php-5.5.38/ext/ 模块包在ext/下面,如果没有就需要下载模块包。
比如要安装curl包,
[root@yiqiang ~]# /usr/local/php/bin/php -m |grep -i curl 查看有否安装
[root@yiqiang curl]# cd //usr/local/src/php-5.5.38/ext/curl
[root@yiqiang curl]# ls
[root@yiqiang curl]# /usr/local/php/bin/phpize 工具:生成Configuring 可执行文件
[root@yiqiang curl]# ls 多出许多Configuring 可执行文件
[root@yiqiang curl]# ./configure --with-php-config=/usr/local/php/bin/php-config(一般不会有什么错误有就是少库)
[root@yiqiang curl]# make
[root@yiqiang curl]# make install
会生成的文件放在下面
/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
[root@yiqiang curl]# ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/curl.so
[root@yiqiang curl]#vim /usr/local/php/etc/php.ini
找到 并加入extension=列,
vim :nohl 去掉高亮
extension=curl.so
按:wq保存退出
[root@yiqiang curl]# /usr/local/php/bin/php -m 加载,查看是否有这个模块curl,没有查看错误日志也会有显示
[root@yiqiang curl]# tail /usr/local/php/logs/php_errors.log 日志也没有,并错误日志也不显示:表示明显的语法错误。
即是完成动态加载!
查询动态加载有哪些:
[root@yiqiang extensions]# grep '^extension=' /usr/local/php/etc/php.ini
例如:memcache redis apc 练习
相关文章推荐
- centos LAMP第三部分php,mysql配置 php配置文件 配置php的error_log 配置php的open_basedir 安装php的扩展模块 phpize mysql配置第二十一节课
- LAMP(php动态扩展模块,httpd的rewrite,php错误日志,php.ini配置详解)
- LAMP搭建17:PHP配置文件php.ini详解
- 安装Redis、PHPredis扩展及Redis配置文件详解
- CentOS安装Redis、PHPredis扩展及Redis配置文件详解 推荐
- CentOS安装Redis、PHPredis扩展及Redis配置文件详解
- LAMP 2.8 php.ini配置文件详解
- LAMP里php.ini配置文件详解
- LAMP--php.ini 配置文件详解
- redis 主从配置实例、配置文件说明、及备份方式,php redis 扩展安装
- php.ini配置文件详解
- linux:php配置文件php.ini详解
- PHP配置文件详解php.ini
- 安装好php后, 修改php.ini 配置文件无效
- HUE配置文件hue.ini 的filebrowser模块详解(图文详解)(分HA集群)
- PHP配置、扩展模块安装
- HUE配置文件hue.ini 的liboozie和oozie模块详解(图文详解)(分HA集群)
- php.ini 文件配置详解
- php配置文件php.ini中文详解
- Redis安装、配置、操作、持久化、主从、phpredis扩展安装使用详解之持久化与主从