nginx连接PHP-fpm

Posted w_boy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx连接PHP-fpm相关的知识,希望对你有一定的参考价值。

nginx连接php

mysql5.7、 php7编译安装见https://www.cnblogs.com/wengshaohang/p/12287676.html

下载 Nginx 源码包

# wget http://nginx.org/download/nginx-1.12.2.tar.gz
创建用于运行 Nginx 的用户
# useradd -r -s /sbin/nologin nginx

安装依赖

# yum -y install gcc gcc-c++ autoconf automake make

# yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel

解压缩 Nginx 并安装
# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
--with-http_ssl_module
# make
# make install

配置 Ngin x 连接 PHP (重难点 )
nginx 连接 php 需要启动 php-fpm 服务

php-fpm 启动:php-fpm启动时通过-c指定php.ini文件路径,-y 指定php-fpm.conf文件路径。

/usr/local/php/sbin/php-fpm

/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf

php-fpm 关闭:

kill -INT `cat /usr/local/php7/var/run/php-fpm.pid`
php-fpm 重启:
kill -USR2 `cat /usr/local/php7/var/run/php-fpm.pid`

master进程可以理解以下信号

INT, TERM 立刻终止
QUIT 平滑终止
USR1 重新打开日志文件
USR2 平滑重载所有worker进程并重新载入配置和二进制模块

# cd /usr/local/php/etc/
# cp -a php-fpm.conf.default php-fpm.conf
生成 php-fpm 的配置文件,并修改指定参数
# vim php-fpm.conf
修改指定条目的参数:
pid = run/php-fpm.pid
# cd /usr/local/php/etc/php-fpm.d/
# cp -a www.conf.default www.conf
# vim www.conf
修改用户和组的指定用户
user = nginx
group = nginx


修改 Nginx 的配置文件,使其识别 .php 后缀的文件
# vim /usr/local/nginx/conf/nginx.conf
取消下列行的注释,并修改 include 选项的后缀为 fastcgi.conf,并注意每一行结尾的分号和大括号
#location ~ \\.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params; #修改为 fastcgi.conf
#}
测试:
重启 Nginx 服务,创建 php 测试文件,访问并查看是否解析


修改 Nginx 配置文件,使其默认自动加载 php 文件
location / {
root html; #Nginx 的默认网页路径:PREFIX/html
index index.php index.html; #设置默认加载的页面,以及优先级
}

以上是关于nginx连接PHP-fpm的主要内容,如果未能解决你的问题,请参考以下文章

如何修改nginx的最大连接数

nginx 502

【ngin】nginx 查看并发连接数的两种方法

nginx连接配置数的设置

Nginx——nginx请求限制详解

Nginx优化指南+LINUX内核优化+linux连接数优化+nginx连接数优化