1、前言
之前已经介绍了nginx,php,mysql的编译安装过程,但nginx和php的关联没有涉及,导致网页不能正常使用php功能,所有本编介绍如何将nginx和php进行关联,使*.php文件可以正常在浏览器访问。
2、准备步骤
2.1、修改php-fpm配置文件
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
2.2、编辑php-fpm配置文件
vi /usr/local/php7/etc/php-fpm.d/www.conf(开启 listen.allowed_clients = 127.0.0.1)
vi /usr/local/php7/etc/php-fpm.conf(开启 pid = run/php-fpm.pid)
2.3、驱动php-fpm
/usr/local/php7/sbin/php-fpm
2.4、查看php-fpm运行状态
ps aux|grep php-fpm
到这里php-fpm的基本配置就完成了,接下来继续配置nginx
3、nginx配置修改
3.1、配置nginx
vim /usr/local/nginx/conf/nginx.conf
在server下添加
location / {
root /var/nginx/www;(网站根目录)
index index.html index.htm index.php;(添加index.php)
}
location ~ \.php {
root /var/nginx/www;(网站根目录)
fastcgi_pass 127.0.0.1:9000;
fastcgi_index /index.php;
include /usr/local/nginx/conf/fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
3.2、重启nginx
如何没有开启则省略
/usr/local/nginx/sbin/nginx (启动nginx)
否则
/usr/local/nginx/sbin/nginx -s reload(重启nginx)
3.3、查看nginx状态
ps aux|grep nginx
3.4、测试网站是否正常访问
略
4、设置nginx的开机自启
4.1、设置nginx自启脚本
vi /etc/init.d/nginx
4.2、修改文件权限
chmod a+x /etc/init.d/nginx
4.3、加入chkconfig管理列表
chkconfig --add /etc/init.d/nginx
4.4、设置/etc/init.d/nginx自启
chkconfig nginx on
脚本内容请参考:https://www.nginx.com/resources/wiki/start/topics/examples/redhatnginxinit/
5、设置php-fpm开机自启
php-fpm的自启脚本在下载的php安装包中
5.1、复制php-fpm脚本
cp //root/php/php-7.1.7/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
5.2、修改php-fpm权限
chmod a+x /etc/init.d/php-fpm
5.3、加入chkfconfig服务
chkconfig --add /etc/init.d/php-fpm
5.4、设置php-fpm自启
chkconfig php-fpm on
5.5、复制php-ini(不是必须,可以省略)
php安装包提供了两个php.ini配置
php.ini-development 对应于 php.ini-dist,适合开发测试,如本地测试环境。
php.ini-production 对应于 php.ini-recommended 拥有较高的安全性设定,适合服务器上线运营当产品。
上面两个二选一即可
cp php.ini-development /usr/local/php7/lib/php.ini
到这里php-fpm的配置就完成了
6、重启查看php-fpm和nginx状态,测试网站是否可以正常访问
略