首先在nginx.conf中进行如下配置:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 60;
underscores_in_headers on;
include otherconf/*.conf;
include hlyunbackend/*.conf;
client_max_body_size 20m;
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Headers X-Requested-With;
add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;
#额外启动多个php-cgi去处理并发请求
upstream fastcgi_proxy{
server 127.0.0.1:9000;
server 127.0.0.1:9001;
server 127.0.0.1:9002;
server 127.0.0.1:9003;
server 127.0.0.1:9004;
server 127.0.0.1:9005;
server 127.0.0.1:9006;
server 127.0.0.1:9007;
server 127.0.0.1:9008;
server 127.0.0.1:9009;
server 127.0.0.1:9010;
server 127.0.0.1:9011;
server 127.0.0.1:9012;
server 127.0.0.1:9013;
server 127.0.0.1:9014;
server 127.0.0.1:9015;
server 127.0.0.1:9016;
server 127.0.0.1:9017;
server 127.0.0.1:9018;
server 127.0.0.1:9019;
server 127.0.0.1:9020;
server 127.0.0.1:9021;
server 127.0.0.1:9022;
server 127.0.0.1:9023;
server 127.0.0.1:9024;
server 127.0.0.1:9025;
}
}
再把所有
改为
保存,重启Nginx。
开启cgi端口(.bat 文件):
taskkill /F /IM nginx.exe > nul taskkill /F /IM php-cgi.exe > nul @echo off echo Starting nginx... E:\nginx\RunHiddenConsole.exe E:\nginx\nginx.exe -p E:\nginx echo Starting PHP FastCGI... E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9000 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9001 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9002 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9003 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9004 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9005 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9006 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9007 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9008 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9009 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9010 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9011 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9012 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9013 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9014 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9015 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9016 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9017 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9018 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9019 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9020 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9021 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9022 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9023 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9024 -c C:\php\php.ini E:\nginx\RunHiddenConsole.exe C:\php\php-cgi.exe -b 127.0.0.1:9025 -c C:\php\php.ini
Windows下nginx+fastcgi+php的并发阻塞问题
原文:https://www.cnblogs.com/blog-dyn/p/12172308.html