安装nginx+php好久了,今天意外的搭建好了,分享给大家 ,以免以后多走弯路。
nginx已经前面安装好了,现在就开始配置php
安装php 分为两个部分 :一部分是php源码,另外是fastcgi管理进程:php-fpm
庆幸的是最新的php版本 都包含php-fpm,所以 我们不需要再去单独安装php-fpm
进入cd /usr/local
1. 下载php压缩包 wget http://cn2.php.net/distributions/php-7.0.3.tar.gz
2.安装插件
yum -y install flex
yum -y install libxml2-devel
tar zxvf php-7.0.3.tar.gz #现在开始安装配置php
mkdir php #创建安装目录
cd /usr/local/php-7.0.3 #进入解压目录
[root@localhost php-7.0.3]# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-config-scan-dir=/usr/local/php/etc --enable-fpm --enable-mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-re2c-cgoto --with-libdir=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226 # 期间会有提示一些警告 不必再意
# 这里的会有php-rpm php-rpm.d 等文件传输到安装文件php里
make #编译
make install
配置php.ini
php解压目录php.ini复制到安装目录里
安装目录/usr/local/php/etc
解压目录/usr/local/php-7.0.3
复制文件(/usr/local/php-7.0.3) 同时重命名为php.ini复制到安装目录下
[root@localhost php-7.0.3]# cp php.ini-production /usr/local/php703/etc/php.ini
vi /usr/local/php/etc/php.ini
rm 文件名 删除文件名
命令行 按i键进入插入模式 编辑php.ini 按:键在命令行里输入向下查找(/) 没有在向上查找(?) ,搜索timezone.
找到date.timezone 去掉前面的 #号,给值 date.timezone = PRC
:wq 退出保存后。
配置php-fpm.conf
1 2 3 | [root@localhost etc]# cd /usr/local/php/etc [root@localhost etc]# ls pear.conf php-fpm.conf.default php-fpm.d php.ini |
1 2 3 | [root@localhost etc]# cp php-fpm.conf.default php-fpm.conf [root@localhost etc]# ls pear.conf php-fpm.conf php-fpm.conf.default php-fpm.d php.ini |
vi php-fpm.conf
1 | pid = run/php-fpm.pid #取消前面的分号 |
php-fpm配置文件www.conf
[root@localhost php-fpm.d]# cd /usr/local/php/etc/php-fpm.d
[root@localhost php-fpm.d]# ls
www.conf www.conf.default
www.conf默认文件参数
修改
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
; will be used.
user = www
group = www
listen = 127.0.0.1:9000 端口改下 9999
启动php-fpm
usr/local/php/sbin/php-fpm
配置nginx支持php
配置文件位置 /usr/local/nginx/conf/nginx.conf
vi nginx.conf
添加index.php支持
添加fastCGI 支持 php-fpm 去掉#号,修改端口号
记得用./nginx -t命令看下配置文件是否正确
以下测试成功就是没问题 路径/usr/etc/nginx/sbin/nginx
1 2 3 | [root@localhost sbin]# ./nginx -t nginx: the configuration file /usr/etc/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/etc/nginx/conf/nginx.conf test is successful |
重启nginx (路径 /usr/local/nginx/sbin)
1 | [root@localhost sbin]# ./nginx -s reload |
停止nginx
./nginx -s stop
启动nginx
./nginx
测试index.php 新建文件vi index.php(目录/usr/etc/nginx/html) 按I输入 <?php phpinfo();?>
测试成功 192.168.1.103/index.php
最后,需要把
/usr/local/nginx/conf
vim nginx.conf
把
改成
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
/usr/local/nginx/conf ----nginx.conf ----
fastcgi_pass 127.0.0.1:9999; ################端口号 要记得改。