首頁  >  文章  >  nginx + php-fpm 高並發配置 (也包含一部分apache/httpd)

nginx + php-fpm 高並發配置 (也包含一部分apache/httpd)

无忌哥哥
无忌哥哥原創
2018-06-27 15:14:352977瀏覽

fpm用的php.ini下 (/etc/php5/fpm/php.ini),很重要,不改會有安全漏洞。

cgi.fix_pathinfo=0

##去掉防syn flood攻擊(高並發下會主動堵塞apache請求導致ab測試下apr_socket_recv: Connection reset by peer (104))

#參考: http://xmarker.blog.163.com/blog/static/226484057201462263815783/

vi /etc/sysctl.conf

net.ipv4.tcp_syncookie=0

看ulimit數

ulimit -Sn

ulimit加到30000

如何修改自行百度,不同linux發行版似乎不一樣

#nginx .conf下修改

worker_processes 12;
worker_rlimit_nofile 100000;
events { 
  use epoll; 
  worker_connections 65535; 
}

php-fpm的sock模式是不可靠的,並發一高就會崩。

php-fpm.conf (or www.conf)

改成listen = 127.0.0.1:9000, 不要用listen = /var/run/php5-fpm.sock

#process.max = 65536 (這個似乎沒用)

pm下4個,改大一點,依照一個行程佔30M記憶體計算。

pm.max_requests = 50000 (這個似乎也沒用)

nginx web server設定下選擇

fastcgi_pass 127.0.0.1:9000;


#

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn