Linux nginx环境编译安装PHP
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux nginx环境编译安装PHP相关的知识,希望对你有一定的参考价值。
nginx环境下的php的安装步骤系统环境:
CentOS 6.5 / 7.0 x86_64
Fedora 20 x86_64
一.yum安装依赖包程序包
yum install zlib libxml libjpeg freetype libpng gd curl libiconv zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel openssl openssl-devel libxslt-devel
安装过显示Nothing to do
二.安装libiconv程序包
①wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz
②tar zxf libiconv-1.15.tar.gz
③cd libiconv-1.15
④./configure --prefix=/usr/local/libiconv(在libiconv-1.15目录下执行)
⑤make && make install
三.配置编译安装PHP-5.6.30.tar.gz
①wget http://tw1.php.NET/get/php-5.6.30.tar.gz/from/this/mirror (在/usr/local/src里下载)
②mv mirror php-5.6.30.tar.gz
③tar xzvf php-5.6.30.tar.gz
④(进到php-5.6.30解压后的目录里)
./configure --prefix=/usr/local/php --enable-fpm --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --with-zlib --with-gd --with-jpeg-dir --with-png-dir --with-iconv=/usr/local/libiconv --enable-short-tags --enable-sockets --enable-zend-multibyte --enable-soap --enable-mbstring --enable-static --with-curl --enable-ftp --with-libxml-dir
⑤make && make install
四.php.ini配置
首先我们需要配置的是php.ini这个文件
安装目录有2个文件:php.ini-development和php.ini-production
php.ini-production 线上版本使用
php.ini-development 开发版本使用
我们选择development进行配置
cp php.ini-development /usr/local/php/lib/php.ini
五.php-fpm配置
①拷贝php-fpm配置文件
cp -R ./sapi/fpm/php-fpm.conf /usr/local/php/etc/php-fpm.conf
②将php给我们准备好的init.d.php-fpm
cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
③将php-fpm服务添加到chkconfig列表
chkconfig --add php-fpm
④设置开机自启动
chkconfig php-fpm on
⑤加权限
chmod +x /etc/init.d/php-fpm
⑥启动php-fpm
service php-fpm start
成功显示Starting php-fpm done
六.创建用户
创建 www 用户
groupadd www
useradd -g www -s /sbin/nologin -M www
七.添加PHP命令到环境变量
①编辑 vim /etc/profile
②在最后一行添加PATH=$PATH:$HOME/bin:/usr/local/php/bin
③source /etc/profile(使环境变量生效)
④查看PHP版本
php -v
⑤然后执行 vim /usr/local/nginx/conf/nginx.conf 编辑nginx配置文件,具体路径根据实际的nginx.conf配置文件位置编辑,下面主要修改nginx的server配置块中的内容,修改location块,追加index.php让nginx服务器默认支持index.php为首页:
⑥然后配置.php请求被传送到后端的php-fpm模块,默认情况下php配置块是被注释的,此时去掉注释并修改为以下内容:
这里面很多都是默认的,root是配置php程序放置的根目录,主要修改的就是fastcgi_param中的/scripts为$document_root
修改完上面的,回到nginx.conf第一行,默认是#user nobody; 这里要去掉注释改为user wwwdata;或者user www www;表示nginx服务器的权限为www
⑦接下来编辑一个测试的php程序,在nginx下的html目录下创建test.php文件,打印一下php配置:
<?php phpinfo() ; ?>
修改完后保存退出,在nginx目录里的sbin重启nginx
nginx已经启动过所以输入./nginx -s reload
然后打开浏览器输入对应的地址进行访问,看到输出页面,说明nginx和php都配置成功了
输入www.localhost.org 显示:
在域名后面加/test.php显示测试网页:
以上是关于Linux nginx环境编译安装PHP的主要内容,如果未能解决你的问题,请参考以下文章
LNMP环境搭建之编译安装指南(php-5.3.27.tar.gz)