Ho iniziato a ospitare siti qualche tempo fa usando Cherokee. Per fonti esterne (FastCGI, ecc.) Ha un'opzione per avviare il processo se non riesce a trovarne uno in esecuzione sul socket o sulla porta designati. Questo è fantastico perché significa che se PHP o un sito Django cadono (come fanno occasionalmente) lo riavvia automaticamente.
Su un nuovo server che utilizza PHP-FPM non ho potuto usare Cherokee (ha un bug con PHP) quindi mi sono trasferito su NGINX. Mi piace molto NGINX (per il suo stile di configurazione) ma sto avendo seri problemi con i processi che cadono e non si rigenerano mai. PHP lo fa a volte ma i siti Django sono più un problema. Ho creato degli script init per loro e vengono visualizzati all'avvio, ma questo non mi aiuta se si disconnettono tra i riavvii.
Immagino che sto cercando un proxy FastCGI. Qualcosa che, come Cherokee, sa quali processi dovrebbero essere in esecuzione su quali socket / porte e li respinge su richiesta. Esiste una cosa del genere? C'è un modo per incorporarlo in NGINX (per facilità di configurazione)?
/etc/init.d/apachectl
. Spesso è necessario riscrivere il proprio semplice script di avvio da utilizzareexec
. Anche se mi piacerebbe vedere altri esempi usando i daemontools