PHP配置、扩展模块安装
来源:互联网 发布:php base64_encoder 编辑:程序博客网 时间:2024/06/10 03:37
php.ini配置文件详解
php配置文件的路径,以及没有路劲获取配置路径的方法
[root@CentOS-1 ~]# ls /usr/local/php/etc/php.ini/usr/local/php/etc/php.ini[root@CentOS-1 ~]# /usr/local/php/bin/php -i |headphpinfo()PHP Version => 5.5.38System => Linux CentOS-1 2.6.32-431.el6.i686 #1 SMP Fri Nov 22 00:26:36 UTC 2013 i686Build Date => Nov 30 2016 04:48:48Configure Command => './configure' '--prefix=/usr/local/php' '--with-apxs2=/usr/local/apache/bin/apxs' '--with-config-file-path=/usr/local/php/etc' '--with-mysql=/usr/local/mysql' '--with-libxml-dir' '--with-gd' '--with-jpeg-dir' '--with-png-dir' '--with-freetype-dir' '--with-iconv-dir' '--with-zlib-dir' '--with-bz2' '--with-openssl' '--with-mcrypt' '--enable-soap' '--enable-gd-native-ttf' '--enable-mbstring' '--enable-sockets' '--enable-exif' '--disable-ipv6'Server API => Command Line InterfaceVirtual Directory Support => disabledConfiguration File (php.ini) Path => /usr/local/php/etcLoaded Configuration File => /usr/local/php/etc/php.ini //调用的配置文件路径[root@CentOS-1 ~]#
;
用着注释符号,apache
使用的是#
作为注释符号;
主要的配置文件有: disable_functions
禁用的一些函数(禁用一些高风险的函数) disable_functions = eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,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,proc_open,proc_close
这些函数的具体功能,可以详细查看php
官方文档
display_errors
display_errors = Off
显示错误信息,On
访问的网页存在错误的话,浏览器访问界面会显示错误,Off
打开错误的网页显示的是空白;开启这个错误日志的话,他人访问同样可以获取到错误信息,这里建议Off
查看脚本是否有错误,可以使用curl -x127.0.0.1:80 www.chenyue.com/forum.php -I
查看返回值,正常值为500 是PHP的脚本出现了异常
log_error
log_error = On
错误日志,这里设置成On
开启,然后找到error_log
设置一下php
错误日志的路径error_log = /usr/local/php/logs/php_errors.log
这里的路径需要设置成绝对路径;如果路径不存在自己创建一个,创建的日志文件夹权限设置成777,这里必须设置成可写;
[root@CentOS-1 ~]# cd /usr/local/php/logs-bash: cd: /usr/local/php/logs: 没有那个文件或目录[root@CentOS-1 ~]# mkdir /usr/local/php/logs[root@CentOS-1 ~]# cd /usr/local/php/logs[root@CentOS-1 logs]# chmod 777 /usr/local/php/logs
配置日志的格式,级别(error_reporting)
error_reporting = E_ALL & ~E_NOTICE
设置成这两个级别,就可以了 &
and 并的意思,~
取反的意思;
open_basedir
open_basedir =
限定用户对网站的文件夹访问;如网站搭建在服务器/data/www
目录下,限定用户只能访问这个文件夹下的相关目录和文件(这个位置一定要将网站的所以文件夹路径包含上,否则无法正常访问的);
例:
open_basedir = /data/www:/tmp
限定在/data/www 和/tmp
目录下,/data/www
为网站所在的文件夹路径。
限定多个目录,不同站点 设置不同
服务器中有多个虚拟主机网站,使用PHP
的open_basedir =
限定会出现混乱,无法起到效果;这里可以在apache
的每个虚拟主机配置文件中增加php_admin_value open_basedir
模块,来限制每个域名下网站的文件夹访问路径
[root@CentOS-1 logs]# vim /usr/local/apache/conf/extra/httpd-vhosts.conf...php_admin_value open_basedir "/data/www:/tmp"...
php扩展模块如何安装
查看已安装模块命令[root@CentOS-1 ~]# /usr/local/php/bin/php -m
php 安装后缺少某个模块,解决方法:
1、使用源码包重新编译安装php(make
、make install
)
2、使用动态方式加载这个模块(单独编译需要的模块)
动态加载模块方法:
找到php的源码包,源码包ext文件夹里面是模块的源码,如果需要的模块这里满没有的话,可以到网上下载
例:curl
的安装方法/usr/local/php/bin/php -m |grep -i curl
查看php是否有加载curl模块
[root@CentOS-1 ~]# cd /usr/local/src[root@CentOS-1 src]# ls -a. httpd-2.2.31 mysql-5.1.73-linux-i686-glibc23.tar.gz php-5.5.38.tar.gz.. httpd-2.2.31.tar.gz php-5.5.38[root@CentOS-1 src]# cd php-5.5.38/ext/[root@CentOS-1 ext]# cd curl[root@CentOS-1 curl]# /usr/local/php/bin/phpize //选择编译模块,生成configure可执行文件[root@CentOS-1 curl]# ./configure --with-php-config=/usr/local/php/bin/php-config[root@CentOS-1 curl]# make[root@CentOS-1 curl]# make installInstalling shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
make install
后会显示是编译后安装文件位置,在php配置文件中添加编译的模块,将extension=curl.so
添加到配置文件中的extension=
的配置文件后面,保存退出即可
extension_dir
(存放扩展模块位置) 可以在php配置文件中自定义位置(默认不做修改)
查看extension
安装模块的路径方法(即make install
后的路径):
[root@CentOS-1 ~]# /usr/local/php/bin/php -i |grep extension_dirextension_dir => /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212 => /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212sqlite3.extension_dir => no value => no value
查看已加载的php动态模块:grep '^extension=' /usr/local/php/etc/php.ini
- PHP配置、扩展模块安装
- PHP扩展模块安装
- php 扩展模块安装
- php for Linux之MySQL扩展模块安装与配置
- php for Linux之MySQL扩展模块安装与配置
- php扩展安装soap模块
- PHP扩展安装memcache模块
- php扩展redis模块安装
- linux php扩展模块安装。
- PHP安装动态扩展模块
- PHP典型扩展模块安装
- php扩展模块安装 快速自动安装
- PHP配置,PHP模块安装
- memcache PHP扩展安装配置
- 利用phpize脚本安装PHP扩展模块
- 利用phpize安装php扩展模块
- memcache+php扩展模块的安装
- 安装php扩展模块之phpize
- GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流
- WINAPI宏
- 最长上升子序列(nlogn)
- Android开发——webview获取H5的Cookie并保存在本地
- [bigdata-011]用docker创建mysql容器+ mysql workbench gui tools
- PHP配置、扩展模块安装
- 【Doug Lea系列】Java并发结构
- linux 配置memcached以及php的memcache扩展
- [bigdata-012]部署CDH5 Hadoop 的伪分布式容器
- github管理神器SourceTree
- Android招行一网通对接
- oracle xmltype字段类型内容读取
- python多线程编程(4): 死锁和可重入锁
- [bigdata-013]某app用户行为分析