码迷,mamicode.com
首页 > Web开发 > 详细

Nginx使用Apache的php处理后台

时间:2014-11-12 15:00:13      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:blog   http   io   ar   os   使用   sp   for   strong   

Nginx本身不自带PHP处理模块,因此需要配置反向代理,将php请求交给其他的PHP解析器执行,然后返回结果给Nginx。

目前流行的方式是使用fast-cgi的方式配置PHP处理服务。其优点是比较简洁,服务器负载轻。但是缺点也是很明显的:无法查看php处理状态。

比如有时候网站因为负荷过高,php处理线程已经全部阻塞,就会造成网站无法再响应php服务。使用fastcgi方式,无法查看是哪些脚本处理时间过长,阻塞了php处理线程。

而Apache的优点就在于,可以很好的查看哪些php脚本处理时间过长,阻塞了有效进程数。

下面的方式是Nginx使用Apache的php处理后台:

配置好apache正确运行在8001端口。

修改nginx的虚拟主机配置,其他php脚本交由apache解析

location ~ \.php$ { 
proxy_pass http://127.0.0.1:8001; 
proxy_set_header Host $host; 
proxy_set_header X-Real-IP $remote_addr; 
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
proxy_connect_timeout 30; 
proxy_send_timeout 30; 
proxy_read_timeout 30; 
client_max_body_size 10m; 
client_body_buffer_size 128k; 
proxy_buffer_size 4k; 
proxy_buffers 4 32k; 
proxy_busy_buffers_size 64k; 
proxy_temp_file_write_size 64k; 
} 

 

重启nginx和apache

注意,如果要查看php的处理状态,安装使用apache的监控模块就可以了。

Nginx使用Apache的php处理后台

标签:blog   http   io   ar   os   使用   sp   for   strong   

原文地址:http://www.cnblogs.com/doujinya/p/4092251.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!