PHP 该怎样利用PHP-FPM配置Nginx

Nginx读作“Engine-X”,是一个web服务器和反向代理服务器。Nginx因为它在同时处理大量请求资源时的速度和能力以及资源最佳利用而家喻户晓。


PHP-FPM指的是“PHP FastCGI进程管理器”。CGI是外部应用程序(CGI程序)与Web服务器之间的接口标准,是在CGI程序和Web服务器之间传递信息的规程。它监听一个端口就像web服务器本身,并通过 PHP和web服务器之间的请求。(PS:T不错的 PHP Q扣峮:276167802,验证:csl)


与Nginx相比, Apache 在处理大量的请求时是相对缓慢的。本教程提供了关于如何安装和配置PHP-FPM Nginx的说明,这将帮助您在Nginx上执行PHP程序。


1。安装Nginx


你可以选择从源代码安装Nginx,也可以使用带有发行版的管理工具包。


这里我们只介绍使用管理工具包安装。


例如,在Ubuntu上可以使用apt-get安装nginx如下所示:


$ sudo apt-get install nginx


启动nginx服务器,如下所示:


$ sudo service nginx start


然后打开http://localhost,看到Nginx的欢迎界面就说明我们安装成功了。



2。安装PHP5-FPM


接下来使用管理工具包安装PHP5-FPM。


例如,在Ubuntu中可以使用apt-get安装php5-fpm。如下所示:


$ sudo apt-get install php5-fpm



3。添加PHP的配置到Nginx


接下来,找到/ etc / nginx / sites-available /default 文件,并添加以下行:


$ sudo vi /etc/nginx/sites-available/default


server {


 listen   80;


 root /usr/share/nginx/www;


 index index.php index.html index.htm;


 server_name example.com;


 location / {


   try_files $uri $uri/ /index.html;


 }


 error_page 404 /404.html;


 error_page 500 502 503 504 /50x.html;


 location = /50x.html {


   root /usr/share/nginx/www;


 }


 # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000


 location ~ \.php$ {


   try_files $uri =404;


   fastcgi_pass unix:/var/run/php5-fpm.sock;


   fastcgi_index index.php;


   fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;


   include fastcgi_params;


 }


}



4。在PHP5-FPM www.conf设置监听参数


接下来,我们需要对 php-FRPM 配置做以下更改。


默认情况下,你在www.conf文件中会看到如下的监听入口:


$ sudo vi  /etc/php5/fpm/pool.d/www.conf


listen =  127.0.0.1:9000


将上面的监听替换成下面的,其他原封不动:


$ sudo vi  /etc/php5/fpm/pool.d/www.conf


listen = /var/run/php5-fpm.sock




5。重启Nginx和PHP5-FPM


重启php5-fpm和nginx。如下所示:


$ sudo service nginx restart



$ sudo service php5-fpm restart


然后在 Nginx 根目录下创建 index.php 文件,并运行测试:


$ sudo vi /usr/share/nginx/www


<?php


 phpinfo( );


?>


最后,打开浏览器,输入http://localhost/index.php即可显示 PHP 的相关信息。
一、反向代理与负载均衡 实验思路: 模拟多台后端服务,通过 Nginx 把客户端请求 “转发” 给不同后端,用策略(轮询、权重等)让请求合理分配,验证多服务协同、流量调度效果。 步骤: 准备多后端(如用简单工具起 2 - 3 个 Web 服务,模拟真实业务节点)。 改 Nginx 配置:定义 “后端服务组”(填后端地址),配 “反向代理规则”(指定请求转给服务组)。 重启 Nginx,多次访问测试,看不同后端是否收到请求(查日志 / 响应内容),验证流量分配策略。 二、反向代理缓存 实验思路: 让 Nginx 把后端响应 “存起来”,相同请求直接用缓存,减少后端压力,验证缓存 “存、取、失效” 逻辑。 步骤: 在 Nginx 里开 “缓存功能”:指定缓存存哪(路径)、多大空间、存多久。 配规则:哪些请求 / 响应要缓存、缓存用啥标识区分。 重启 Nginx,首次访问触发后端,再次访问看 “缓存命中”(后端无请求、响应更快),改缓存时长 / 删缓存文件,测 “失效逻辑”。 三、NginxPHP - FPM 集成 实验思路: 让 Nginx 能处理 PHP 代码(动态语言),让 “静态资源(HTML 等)+ 动态脚本(PHP)” 都能跑,验证动态页面解析。 步骤: 装 PHP - FPMPHP 运行环境),启动服务。 改 Nginx 配置:识别 .php 文件,转发给 PHP - FPM 处理。 写简单 PHP 文件(如显示 PHP 信息),放指定目录,访问测试,看 PHP 页面正常显示,确认集成成功。 四、PHP 扩展(如 Memcache) 实验思路: 给 PHP 装 “额外功能”(Memcache 扩展),让 PHP 能连缓存服务(Memcache),验证动态脚本与缓存交互。 步骤: 装 Memcache 服务端,启动;装 PHP 的 Memcache 扩展,重启 PHP - FPM。 写 PHP 脚本:连 Memcache、存 / 取数据,访问脚本,看输出是否拿到缓存内容,验证扩展生效、交互正常。 整体流程建议 按 “反向代理与负载均衡→反向代理缓存→Nginx + PHP - FPMPHP 扩展” 顺序做,每步用 “实际访问 + 日志观察” 验证。遇问题先查 “配置语法、服务是否启动、权限(如缓存目录、文件权限)”,逐步排查。 帮我整理一下格式
08-12
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值