安装环境依赖包
yum -y install \
libjpeg \
libjpeg-devel \
libpng libpng-devel \ #截图
freetype freetype-devel \ #字体样式
libxml2 \ #xml格式文件
libxml2-devel \
zlib zlib-devel \ #支持压缩
curl curl-devel \ #资源定位
openssl openssl-devel #安全
编译安装
./configure \
--prefix=/usr/local/php \ #安装路径
--with-mysql-sock=/usr/local/mysql/mysql.sock \ #连接MySQL
--with-mysqli \ #压缩格式
--with-zlib \
--with-curl \
--with-gd \ #gd库(处理图片)
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \ #字体
--with-openssl \
--enable-fpm \ #处理状态的
--enable-mbstring \ #字符串处理
--enable-xml \ #xml格式文件处理
--enable-session \ #会话共享
--enable-ftp \ #开启ftp
--enable-pdo \ #连接数据库的驱动
--enable-tokenizer \ #做身份验证
--enable-zip #压缩
make -j3 && make install
cp php.ini-development /usr/local/php/lib/php.ini
vi /usr/local/php/lib/php.ini
mysqli.default_socket = /usr/local/mysql/mysql.sock #连接数据库的
date.timezone = Asia/Shanghai #时间
/usr/local/php/bin/php -m #验证安装的模块
配置及优化fpm模块
cd /usr/local/php/etc/
cp php-fpm.conf.default php-fpm.conf #cp一个配置文件
cd /usr/local/php/etc/php-fpm.d/
cp www.conf.default www.conf
cd /usr/local/php/etc/
vi php-fpm.conf
pid = run/php-fpm.pid
附加:
cp -p ------- 不会修改属组
cp ------- 属组会改为当前用户
/usr/local/php/sbin/php-fpm -c /usr/local/php/lib/php.ini
netstat -anpt | grep 9000 #9000是fpm端口,fpm处理动态请求
ln -s /usr/local/php/bin/* /usr/local/bin/
使nginx服务支持php功能
vi /usr/local/nginx/conf/nginx.conf
location ~ \.php$ { #'~':支持正则; '.php'识别以php结尾的文件
root html; #站点目录名称‘html’
fastcgi_pass 127.0.0.1:9000; #监听端口9000
fastcgi_index index.php; #首页的类型
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name; #识别脚本路径
include fastcgi_params; #包含内置的一些变量
}
vi /usr/local/nginx/html/index.php
<?php
phpinfo();
?>
systemctl restart nginx
测试:
在浏览器输入
http://20.0.0.21/index.php