我用nginx for windows 做web服务器器
php使用fastcgi方式运行
php-cgi.exe -b 127.0.0.1:9000 -c php.ini -C 问题是:好像fastcig 是单进程处理的,一个页面没有处理完,下一个页面就没法处理
例如:某用户访问 1.php 这个页面需要执行25秒,则这个网站的其他用户都要等到这个页面执行完才能访问,
实在是把人都急死了 郁闷啊..........我初学php还请大侠多指教一下
php使用fastcgi方式运行
php-cgi.exe -b 127.0.0.1:9000 -c php.ini -C 问题是:好像fastcig 是单进程处理的,一个页面没有处理完,下一个页面就没法处理
例如:某用户访问 1.php 这个页面需要执行25秒,则这个网站的其他用户都要等到这个页面执行完才能访问,
实在是把人都急死了 郁闷啊..........我初学php还请大侠多指教一下
你用命令行方式运行,当然要等待执行结束了
在web方式下,你将会在任务管理器中看到多个php-cgi.exe 进程
php\RunHiddenConsole.exe php\php-cgi.exe -b 127.0.0.1:9001 -c php\php.ini
php\RunHiddenConsole.exe php\php-cgi.exe -b 127.0.0.1:9002 -c php\php.ini
php\RunHiddenConsole.exe php\php-cgi.exe -b 127.0.0.1:9003 -c php\php.ini
php\RunHiddenConsole.exe php\php-cgi.exe -b 127.0.0.1:9004 -c php\php.ini
......
是不是这样启动多个进程然后在nginx
upstream myfastcgi {
server 127.0.0.1:9000 weight=1;
server 127.0.0.1:9001 weight=1;
server 127.0.0.1:9002 weight=1;
server 127.0.0.1:9003 weight=1;
}
是这样么 那大侠指点一下啊 非常感谢
echo 正在启动php(FastCGI)进程……
php\RunHiddenConsole.exe php\php-cgi.exe -b 127.0.0.1:9000 -c php\php.ini
下面多加上几行
php\RunHiddenConsole.exe php\php-cgi.exe -b 127.0.0.1:9000 -c php\php.ini
就行