來源:互聯網
上載者:User
關鍵字
PHP
Apache
nginx
處理後臺
Nginx本身不自帶PHP處理模組,因此需要配置反向代理,將php請求交給其他的PHP解析器執行,然後返回結果給Nginx。
目前流行的方式是使用fast-cgi的方式配置PHP處理服務。 其優點是比較簡潔,伺服器負載輕。 但是缺點也是很明顯的:無法查看php處理狀態。
比如8630.html">有時候網站因為負荷過高,php處理執行緒已經全部阻塞,就會造成網站無法再回應php服務。 使用fastcgi方式,無法查看是哪些腳本處理時間過長,阻塞了php處理執行緒。
而HTTP://www.aliyun.com/zixun/aggregation/14417.html">Apache的有點就在於,可以很好的查看哪些php腳本處理時間過長,阻塞了有效進程數。
下面的方式是使用Apache最為Nginx的php處理後臺:
1,先安裝apache
apt-get install apache
並配置好apache正確運行在8001埠。
2,修改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中文網:HTTP://www.nginx.com.cn/?p=351