All files from this thread

File Name File Size   Posted by Date  
nginx.conf 2.7 KB open | download B.R. 10/07/2013 Read message
test.php 77 bytes open | download B.R. 10/07/2013 Read message
php.ini 67.3 KB open | download B.R. 10/07/2013 Read message
nginx_php_backend.pcapng 5.5 KB open | download B.R. 10/07/2013 Read message
October 10, 2013 01:35PM
> Correct. One nginx process can handle multiple requests, it's one
> PHP process which limits you.

Not really, use the NTS version of php not the TS, and use a pool as suggested, e.a.;

# loadbalancing php
upstream myLoadBalancer {
server 127.0.0.1:19001 weight=1 fail_timeout=5;
server 127.0.0.1:19002 weight=1 fail_timeout=5;
server 127.0.0.1:19003 weight=1 fail_timeout=5;
server 127.0.0.1:19004 weight=1 fail_timeout=5;
server 127.0.0.1:19005 weight=1 fail_timeout=5;
server 127.0.0.1:19006 weight=1 fail_timeout=5;
server 127.0.0.1:19007 weight=1 fail_timeout=5;
server 127.0.0.1:19008 weight=1 fail_timeout=5;
server 127.0.0.1:19009 weight=1 fail_timeout=5;
server 127.0.0.1:19010 weight=1 fail_timeout=5;
# usage: fastcgi_pass myLoadBalancer;
}

For a 100mb pipeline this is enough to handle many, many concurrent users.

runcgi.cmd
----------------------------------------------------
@ECHO OFF
ECHO Starting PHP FastCGI...
c:
cd \php

del abort.now

start multi_runcgi.cmd 19001
start multi_runcgi.cmd 19002
start multi_runcgi.cmd 19003
start multi_runcgi.cmd 19004
start multi_runcgi.cmd 19005
start multi_runcgi.cmd 19006
start multi_runcgi.cmd 19007
start multi_runcgi.cmd 19008
start multi_runcgi.cmd 19009
start multi_runcgi.cmd 19010
----------------------------------------------------

multi_runcgi.cmd
----------------------------------------------------
@ECHO OFF
ECHO Starting PHP FastCGI...
set PATH=C:\PHP;%PATH%
set TEMP=\webroot\_other\xcache
set TMP=\webroot\_other\xcache
set PHP_FCGI_CHILDREN=0
set PHP_FCGI_MAX_REQUESTS=10000

:loop
c:
cd \php

C:\PHP\php-cgi.exe -b 127.0.0.1:%1

set errorlvl=%errorlevel%
choice /t:y,3

date /t>>\webroot\_other\fzlogs\ServerWatch.log
time /t>>\webroot\_other\fzlogs\ServerWatch.log
echo Process php-cgi %1 restarted>>\webroot\_other\fzlogs\ServerWatch.log
echo Errorlevel = %errorlvl% >>\webroot\_other\fzlogs\ServerWatch.log
echo:>>\webroot\_other\fzlogs\ServerWatch.log

if not exist abort.now goto loop
----------------------------------------------------

Create a service which starts runcgi.cmd at boot.
After the service is running, assign a very limited user to the service.
ea. always jail nginx and php-cgi separately.
Subject Author Posted

How to disable output buffering with PHP and nginx

Ben Johnson September 16, 2013 01:22PM

Re: How to disable output buffering with PHP and nginx

Ben Johnson October 07, 2013 03:24PM

Re: How to disable output buffering with PHP and nginx

itpp2012 October 07, 2013 04:25PM

Re: How to disable output buffering with PHP and nginx

Francis Daly October 07, 2013 05:36PM

Re: How to disable output buffering with PHP and nginx

B.R. October 07, 2013 06:00PM

Re: How to disable output buffering with PHP and nginx

Maxim Dounin October 07, 2013 07:20PM

Re: How to disable output buffering with PHP and nginx Attachments

B.R. October 07, 2013 11:00PM

Re: How to disable output buffering with PHP and nginx

Maxim Dounin October 08, 2013 11:50AM

Re: How to disable output buffering with PHP and nginx

Ben Johnson October 10, 2013 11:14AM

Re: How to disable output buffering with PHP and nginx

Maxim Dounin October 10, 2013 11:28AM

Re: How to disable output buffering with PHP and nginx

Ben Johnson October 10, 2013 12:50PM

Re: How to disable output buffering with PHP and nginx

itpp2012 October 10, 2013 01:35PM

Re: How to disable output buffering with PHP and nginx

Maxim Dounin October 10, 2013 02:26PM

Re: How to disable output buffering with PHP and nginx

Ben Johnson October 12, 2013 04:40PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 131
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready