我用nginx for windows 做web服务器器 
php使用fastcgi方式运行 
php-cgi.exe -b 127.0.0.1:9000 -c php.ini -C 问题是:好像fastcig 是单进程处理的,一个页面没有处理完,下一个页面就没法处理
例如:某用户访问 1.php 这个页面需要执行25秒,则这个网站的其他用户都要等到这个页面执行完才能访问,
实在是把人都急死了 郁闷啊..........我初学php还请大侠多指教一下

解决方案 »

  1.   

    想当然了
    你用命令行方式运行,当然要等待执行结束了
    在web方式下,你将会在任务管理器中看到多个php-cgi.exe 进程
      

  2.   

    需要配置nginx 同时开启多个php-cgi进程~
      

  3.   

    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: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;
    }
    是这样么 那大侠指点一下啊 非常感谢
      

  4.   

    Windows 2003的系统,不熟。。
      

  5.   

    多运行几个进程就可以,在start.bat中
    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
    就行