Guida di IBM HTTP Server: Direttive FastCGI

Direttive FastCGI

FastCgiAccessChecker

La direttiva FastCgiAccessChecker viene utilizzata per definire un'applicazione FastCGI come programma di convalida di accesso per le directory. La fase Accesso Apache precede l'autenticazione dell'utente e quindi la decisione di consentire (o meno) l'accesso alla risorsa richiesta si basa sulle intestazioni HTTP inoltrate con la richiesta. I programmi di autorizzazione basati su FastCGI si rivelano utili quando si presenta un componente dinamico alla decisione di convalida di accesso come ad esempio un'ora del giorno o se l'account di un dominio è aggiornato o meno.

Se il nome file dell'applicazione FastCGI non dispone di una definizione server esterna o statica corrispondente, viene avviato come applicazione FastCGI dinamica. Se il nome file non inizia con una barra (/), si presuppone che sia relativo al ServerRoot.

FastCgiAccessChecker viene utilizzato all'interno dei contenitori Directory o Location.

<Directory htdocs/protected>
FastCgiAccessChecker fcgi-bin/access-checker
</Directory>

mod_fastcgi invia quasi tutte le variabili di ambiente standard solitamente disponibili per i gestori delle richieste CGI/FastCGI. Tutte le intestazioni restituite da un'applicazione del programma di verifica di accesso FastCGI in una risposta positiva (Stato: 200) vengono inoltrate ai sottoprocessi (richiami CGI/FastCGI) come variabili di ambiente. Tutte le intestazioni restituite in una risposta negativa vengono inoltrate al client. E' possibile ottenere la funzione che osserva la specifica FastCGI utilizzando l'opzione "-compat".

mod_fastcgi imposta la variabile di ambiente "FCGI_APACHE_ROLE" su "ACCESS_CHECKER" per indicare quale fase del programma di autorizzazione (specifico di Apache) viene eseguita.

Le risposte di personalizzazione negative provenienti dalle applicazioni del programma di autorizzazione FastCGI non sono supportate. Consultare la direttiva ErrorDocument per una soluzione (un'applicazione FastCGI può servire il documento).

FastCgiAccessCheckerAuthoritative

Impostare la direttiva FastCgiAccessCheckerAuthoritative in modo esplicito su Off consente alla verifica di accesso di essere inoltrata ai moduli di livello inferiore (come definito nei file di Configurazione e modules.c) se l'applicazione FastCGI non riesce a garantire l'accesso.

Per default, il controllo non viene inoltrato e si avrà una verifica di accesso non riuscita in una risposta Vietata. Si consiglia di disabilitare il valore default.

FastCgiAuthenticator

La direttiva FastCgiAuthenticator viene utilizzata per definire un'applicazione FastCGI come programma di autenticazione per le directory. I programmi di autenticazione verificano che il richiedente sia veramente chi dice di essere mettendo in corrispondenza il nome utente e la password forniti con un elenco o un database di utenti e password conosciuti. I programmi di autenticazione basati su FastCGI sono utili quando il database utente viene gestito all'interno di un programma indipendente esistente oppure quando risiede su una macchina diversa dal server web.

Se il nome file dell'applicazione FastCGI non dispone di una definizione server esterna o statica corrispondente, viene avviato come applicazione FastCGI dinamica. Se il nome file non inizia con una barra (/) si presume che si riferisca a ServerRoot.

FastCgiAuthenticator viene utilizzato all'interno dei contenitori Directory o Location e deve comprendere una direttiva AuthType e AuthName. Viene supportato solamente il tipo di autenticazione utente Basic. Deve essere accompagnato da una richiesta o da una direttiva FastCgiAuthorizer per poter operare in modo corretto.

<Directory htdocs/protected>
AuthType Basic
AuthName ProtectedRealm
FastCgiAuthenticator fcgi-bin/authenticator
require valid-user
</Directory>

mod_fastcgi invia quasi tutte le variabili di ambiente standard generalmente disponibili per i gestori delle richieste CGI/FastCGI. Tutte le intestazioni restituite da un'applicazione di autenticazione FastCGI in una risposta positiva (Stato: 200) vengono inoltrate ai sottoprocessi (richiami CGI/FastCGI) come variabili di ambiente. Tutte le intestazioni restituite in una risposta negativa vengono inoltrate al client. E' possibile ottenere la funzione che osserva la specifica FastCGI utilizzando l'opzione "-compat".

Mod_fastcgi imposta la variabile di ambiente "FCGI_APACHE_ROLE" su "AUTHENTICATOR" per indicare quale fase del programma di autorizzazione (specifico di Apache) viene eseguita.

Le risposte di personalizzazione negative provenienti dalle applicazioni del programma di autorizzazione FastCGI non sono supportate. Visualizzare la direttiva ErrorDocument per una soluzione (un'applicazione FastCGI può servire il documento).

FastCgiAuthenticatorAuthoritative

Impostare la direttiva FastCgiAuthenticatorAuthoritative in modo esplicito su Off consente all'autenticazione di essere inoltrata ai moduli di livello inferiore (come definito nei file Configuration e modules.c) se l'applicazione FastCGI non riesce ad autenticare l'utente.

L'utilizzo comune avviene insieme a un AuthUserFile ben protetto contenente diversi utenti (correlato alla gestione). 

Per default, il controllo non viene inoltrato e un utente sconosciuto verrà visualizzato nella risposta ad un'Autorizzazione richiesta.  Si consiglia di disabilitare il valore di default.

FastCgiAuthorizer

La direttiva FastCgiAuthorizer viene utilizzata per definire un'applicazione FastCGI concedendo l'autorizzazione di accesso directory per directory.  Gli Authorizer convalidano l'accesso o meno di un utente autenticato alla risorsa richiesta.  Gli authoriser di tipo FastCGI risultano utili principalmente nel caso di un componente dinamico per una decisione di autorizzazione come un'orario specifico o come il pagamento o meno da parte dell'utente di determinati addebiti. 

Se il nome file dell'applicazione FastCGI non dispone di una definizione server esterna o statica corrispondente, viene avviato come applicazione FastCGI dinamica.  Se il nome file non inizia con una barra (/) si presuppone che si riferisca al ServerRoot.

FastCgiAuthorizer viene utilizzato nell'ambito di container Directory or Location e dovo includere una direttiva di tipo AuthType e AuthName. Deve essere accompagnato da una direttiva di autenticazione come FastCgiAuthenticator, AuthUserFile, AuthDBUserFile o AuthDBMUserFile per poter funzionare correttamente.

.

<Directory htdocs/protected>
AuthType Basic
AuthName ProtectedRealm
AuthDBMUserFile conf/authentication-database
FastCgiAuthorizer fcgi-bin/authorizer
</Directory>

mod_fastcgi invia quasi tutte le variabili di ambiente standard generalmente disponibili per i gestori della richiesta CGI/FastCGI.  Tutte le intestazioni restituite da un'applicazione di autenticazione FastCGI in una risposta positiva (Stato: 200) vengono inoltrate ai sottoprocessi (richiami CGI/FastCGI) come variabili di ambiente.  Tutte le intestazioni restituite in una risposta positiva vengono inoltrate al client.  E' possibile ottenere la funzione conforme alla specifica FastCGI utilizzando l'opzione "-compat".

Mod_fastcgi imposta la variabile di ambiente "FCGI_APACHE_ROLE" su "AUTHORIZER" per indicare quale fase authorizer (specifica di Apache) viene eseguita.

Le risposte di errore di personalizzazione dalle applicazioni del programma di autorizzazione FastCGI non sono supportate.  Consultare la direttiva ErrorDocument per una soluzione (un'applicazione FastCGI può servire il documento).

FastCgiAuthorizerAuthoritative

Impostare la direttiva FastCgiAuthenticatorAuthoritative in modo esplicito su Off consente all'autenticazione di essere inoltrata ai moduli di livello inferiore (come definito nei file Configuration e modules.c) se l'applicazione FastCGI non riesce ad autenticare l'utente.

L'utilizzo comune avviene insieme a un AuthUserFile ben protetto contenente diversi utenti (correlato alla gestione). 

Per default, il controllo non viene inoltrato e un utente sconosciuto verrà visualizzato nella risposta ad un'Autorizzazione richiesta.  Si consiglia di disabilitare il valore di default.

FastCgiConfig

La direttiva FastCgiConfig definisce i parametri di default per tutte le applicazioni FastCGI dinamiche. Questa direttiva non interessa in alcun modo le applicazioni esterne o statiche.

Le applicazioni dinamiche non vengono avviate quando si avvia il server, ma su richiesta. Se le domande sono eccessive, vengono avviate le istanze aggiuntive dell'applicazione. Appena le domande diminuiscono , le istanze dell'applicazione vengono interrotte. Molte delle opzioni governano questo processo.

Option può essere una della seguenti (non sensibili al maiuscolo e minuscolo):

appConnTimeout n (0 secondi)
Il numero di secondi di attesa prima che si completi la connessione all'applicazione FastCGI oppure utilizzare 0 per indicare un blocco di connect().  Se il timeout scade, viene visualizzato   SERVER_ERROR.  Per un valore diverso da zero, questo è il tempo utilizzato in select() per scrivere sul programma di descrizione del file restituito da connect()  non bloccato. Le opzioni di non blocco connect() costituiscono un problema su diverse piatteforme.  Consultare inoltre -idle-timeout, produce gli stessi errori ma in modo più gestibile.
idle-timeout n (30 secondi)
Il numero di secondi di inattività dell'applicazione FastCGI concessi prima che venga respinta la richiesta e che l'evento venga registrato (in error LogLevel).  Il timer di inattività si applica solo fino a quando una connessione è in sospeso con l'applicazione FastCGI.  Se una richiesta viene accodata ad un'applicazione, ma l'applicazione non risponde (scrivendo e fluttuando) in questo arco di tempo, la richiesta verrà interrotta.  Se la comunicazione è completa con l'applicazione ma incompleta con il client (la risposta viene registrata nel buffer), il timeout non viene applicato.
autoUpdate nessuno
Questa opzione fa sì che mod_fastcgi controlli l'età dell'applicazione sul disco prima di elaborare ogni richiesta.  Se l'applicazione è più recente, il manager del processo viene informato e tutte le istanze attive dell'applicazione vengono interrotte.  In generale, si preferisce che questo tipo di funzionalità sia contenuta nell'applicazione (e.g. ogni 100sima richiesta verifica la presenza di una versione più recente sul disco e, in tal caso, termina).   Potrebbe verificarsi un problema importante (bug) quando si utilizza questa opzione con -restart.
gainValue n (0.5)
Un valore di virgole mobile tra 0 e 1 che viene utilizzato come esponente nel calcolo del fattore di caricamento dei tempi di connessione decaduti esponenzialmente delle applicazioni dinamiche FastCGI al momento in funzione.  I vecchi valori vengono ridotti in scala di (1 - gainValue), così diminuendo il fattore di scala, i vecchi valori saranno più pesanti rispetto al nuovo valore, che viene scalato di gainValue.
initial-env name[=value] nessuno
Una coppia formata dal valore e dal nome da inoltrare nell'ambiente iniziale quando le istanze dell'applicazione vengono create.  Per inoltrare una variabile dall'ambiente Apache, non fornire "=" (se la variabile non si trova al momento nell'ambiente, verrà definita senza un valore).  Per definire una variabile senza un valore, fornire "=" senza alcun valore.  L'opzione può essere utilizzata ripetutamente.
init-start-delay n (1 secondo)
Il numero minimo di secondi tra la creazione delle istanze di questa applicazione.   Questo ritardo diminuisce la domanda inserita nel sistema al momento dell'avvio del server.
killInterval n (300 secondi)
killInterval stabilisce la frequenza di implementazione dell'interruzione dell'istanza dell'applicazione dinamica all'interno del gestore del processo.  I numeri inferiori per una politica più aggressiva, mentre i numeri più alti per una politica meno aggressiva.
listen-queue-depth n (100)
La lunghezza della coda listen() (conosciuta anche come backlog) condivisa da tutte le istanze di questa applicazione.  Una coda listen ancor più lunga consente al server di fare fronte alle fluttuazioni di caricamento transitorie senza rifiutare le richieste; non aumenta la velocità di transizione.   Aggiungere altre istanze dell'applicazione può aumentare le prestazioni/velocità di trasmissione, a seconda dell'applicazione e dell'host.
maxClassProcesses n (10)
Il numero massimo di istanze delle applicazioni FastCGI dinamiche consentito per eseguire ogni applicazione FastCGI.
maxProcesses n (50)
Il numero massimo totale di istanze delle applicazioni FastCGI dinamiche consentito da poter eseguire in qualsiasi momento.
minProcesses n (5)
Il numero minimo totale di istanze delle applicazioni FastCGI dinamiche consentito da eseguire in qualsiasi momento senza essere interrotti dal gestore dei processi (a causa della mancanza di domande).
multiThreshhold n (50)
Un numero intero compreso tra 0 e 100 utilizzato per stabilire se ogni istanza dell'applicazione FastCGI deve essere terminata.  Se l'applicazione ha più di una istanza al momento attiva, questo attributo verrà utilizzato per stabilire se una di esse deve essere interrotta.  Se rimane invece una sola istanza, viene utilizzato singleThreshhold.
pass-header header nessuno
Il nome di un'Intestazione di richiesta HTTP da inoltrare nell'ambiente request.  Questa opzione rende disponibile il contenuto delle intestazioni che solitamente non sono disponibili (e.g. Autorizzazione) per un ambiente CGI.
priority n (0)
La priorità del processo da assegnare alle istanze dell'applicazione (utilizzando setpriority()).
processSlack n (5 secondi)
Se la somma di tutte le applicazioni FastCGI dinamiche attualmente in esecuzione supera maxProcesses - processSlack, il gestore dei processi richiama la politica di interruzione.  Ciò serve a migliorare le prestazioni in caso di caricamenti eccessivi interrompendo alcune delle istanze di applicazione più inutilizzate  prima di raggiungere maxProcesses.
restart nessuno
Questa opzione fa sì che il gestore dei processi riavvii le applicazioni dinamiche in caso di non riuscita (come per le applicazioni statiche).
restart-delay n (5 secondi)
Il numero minimo di secondi compresi tra la nuova creazione delle istanze non riuscite di questa applicazione.  Questo ritardo impedisce ad un'applicazione corrotta di assorbire troppo il sistema.
singleThreshhold n (0)
Un numero intero compreso tra 0 e 100 utilizzato per stabilire se l'ultima istanza di un'applicazione FastCGI può essere interrotta.  Se il fattore di caricamento calcolato del gestore dei processi per l'applicazione è inferiore alla soglia specificata, l'ultima istanza viene interrotta.   Per eseguire gli eseguibili nella modalità "idle" per un lungo tempo, è necessario specificare un valore vicino ad 1, tuttavia se la memoria o il tempo della CPU è di primaria importanza, un valore vicino a 100 sarebbe più applicabile.  Un valore uguale a 0 impedirà all'ultima istanza di un'applicazione di essere interrotta; questo è il valore di default, si consiglia di non modificarlo (specialmente se si è impostato -appConnTimeout).
startDelay n (3 secondi)
Il numero di secondi di attesa paziente del server web durante i quali si tenta di connettersi ad un'applicazione FastCGI dinamica.  Se l'intervallo scade, il gestore dei processi viene informato con la speranza che avvii un'altra istanza dell'applicazione.  startDelay deve essere inferiore rispetto a appConnTimeout per poter essere effettivo.
updateInterval n  (300 secondi)
updateInterval stabilisce la frequenza con la quale viene eseguita l'analisi statistica necessaria a stabilire il destino delle applicazioni dinamiche FastCGI.

FastCgiExternalServer

appConnTimeout n (0 secondi)
Il numero di secondi di attesa prima che si completi la connessione all'applicazione FastCGI oppure utilizzare 0 per indicare un blocco di connect().  Se il timeout scade, viene visualizzato   SERVER_ERROR.  Per un valore diverso da zero, questo è il tempo utilizzato in select() per scrivere sul programma di descrizione del file restituito da connect()  non bloccato. Le opzioni di non blocco connect() costituiscono un problema su diverse piatteforme.  Consultare inoltre -idle-timeout, produce gli stessi errori ma in modo più gestibile.
idle-timeout n (30 secondi)
Il numero di secondi di inattività dell'applicazione FastCGI concessi prima che venga respinta la richiesta e che l'evento venga registrato (in error LogLevel).  Il timer di inattività si applica solo fino a quando una connessione è in sospeso con l'applicazione FastCGI.  Se una richiesta viene accodata ad un'applicazione, ma l'applicazione non risponde (scrivendo e fluttuando) in questo arco di tempo, la richiesta verrà interrotta.  Se la comunicazione è completa con l'applicazione ma incompleta con il client (la risposta viene registrata nel buffer), il timeout non viene applicato.
flush nessuno
Forzare la scrittura sul client appena i dati vengono ricevuti dall'applicazione.  Per default, mod_fastcgi registra i dati nel buffer in modo tale da liberare l'applicazione il più velocemente possibile.
host hostname:port nessuno
Il nome host o l'indirizzo IP e il numero della porta TCP (1-65535) che l'applicazione utilizza per comunicare con il server web. Le opzioni -socket e -host si escludono a vicenda.
Pass-header header nessuno
Il nome di un'Intestazione di richiesta HTTP da inoltrare nell'ambiente request.  Questa opzione rende disponibile il contenuto delle intestazioni che solitamente non sono disponibili (e.g. Autorizzazione) per un ambiente CGI.
socket filename nessuno
UNIX: Il nome file del socket del dominio UNIX che l'applicazione utilizza per comunicare con il server web.  Il nome file si riferisce a FastCgiIpcDir.  Le opzioni -socket e -port si escludono a vicenda.
Windows NT:  Il nome del collegamento denominato che l'applicazione utilizza per comunicare con il server web. Il nome si riferisce a FastCgiIpcDir.  Le opzioni -socket e -port si escludono a vicenda.

FastCgiIpcDir

UNIX: La direttiva FastCgiIpcDir specifica directory come ubicazione nella quale memorizzare (e trovare, nel caso delle applicazioni FastCGI esterne) i file socket UNIX utilizzati per la comunicazione tra le applicazioni e il server web. Se la directory non inizia con una barra (/) si presume che si riferisca a ServerRoot. Se la directory non esiste, si tenta di crearla con i permessi appropriati. Non specificare una directory che non si trova su un file system locale. Se viene utilizzata la directory di default (o un'altra directory all'interno /tmp), mod_fastcgi si interromperà se il sistema cancella periodicamente i file da /tmp.

Windows NT: La direttiva FastCgiIpcDir specifica name come root per i collegamenti denominati utilizzati per le comunicazioni tra l'applicazione e il server Web. name deve essere nella modalità \\.\pipe\pipename La parte pipename può contenere ogni carattere diverso da una barra retroversa.

La direttiva FastCgiIpcDir deve precedere tutte le direttive FastCgiServer o FastCgiExternalServer (che fa uso dei socket UNIX). La directory deve essere leggibile, scrivibile ed eseguibile (ricercabile) da parte del server web, in caso contrario non deve essere accessibile a nessuno.

FastCgiServer

La direttiva FastCgiServer definisce filename come applicazione FastCGI statica. Se il nome file non inizia con una barra (/) si presuppone che si riferisca a ServerRoot.

Per default, il Gestore dei processi avvierà una istanza dell'applicazione con la configurazione di default specificata (tra parentesi) di seguito. Se un'istanza dell'applicazione statica si interrompe per un qualsiasi motivo mod_fastcgi ne creerà un'altra per rimpiazzarla e registrerà l'evento (nell'avvertenza LogLevel).

Option può essere una della seguenti (non sensibili al maiuscolo e minuscolo):

appConnTimeout n (0 secondi)
Il numero di secondi di attesa prima che si completi la connessione all'applicazione FastCGI oppure utilizzare 0 per indicare un blocco di connect().  Se il timeout scade, viene visualizzato   SERVER_ERROR.  Per un valore diverso da zero, questo è il tempo utilizzato in select() per scrivere sul programma di descrizione del file restituito da connect()  non bloccato. Le opzioni di non blocco connect() costituiscono un problema su diverse piatteforme.  Consultare inoltre -idle-timeout, produce gli stessi errori ma in modo più gestibile.
idle-timeout n (30 secondi)
Il numero di secondi di inattività dell'applicazione FastCGI concessi prima che venga respinta la richiesta e che l'evento venga registrato (in error LogLevel).  Il timer di inattività si applica solo fino a quando una connessione è in sospeso con l'applicazione FastCGI.  Se una richiesta viene accodata ad un'applicazione, ma l'applicazione non risponde (scrivendo e fluttuando) in questo arco di tempo, la richiesta verrà interrotta.  Se la comunicazione è completa con l'applicazione ma incompleta con il client (la risposta viene registrata nel buffer), il timeout non viene applicato.
initial-env name[=value] nessuno] nessuno
Una coppia formata dal nome e dal valore da inoltrare nell'ambiente iniziale dell'applicazione FastCGI   . Per inoltrare una variabile dall'ambiente Apache, non fornire "=" (se la variabile non è al momento nell'ambiente, verrà definita senza un valore).  Per definire una variabile senza un valore, fornire "=" senza alcun valore.  L'opzione può essere utilizzata ripetutamente.
init-start-delay n(1 secondo)
Il numero minimo di secondi tra la creazione delle istanze di questa applicazione.   Questo ritardo diminuisce la domanda inserita nel sistema al momento dell'avvio del server.
Flush nessuno
Forzare la scrittura sul client appena i dati vengono ricevuti dall'applicazione.  Per default, mod_fastcgi registra i dati nel buffer in modo tale da liberare l'applicazione il più velocemente possibile.
Listen-queue-depth n (100)
La lunghezza della coda listen() (conosciuta anche come backlog) condivisa da tutte le istanze di questa applicazione.  Una coda listen ancor più lunga consente al server di fare fronte alle fluttuazioni di caricamento transitorie senza rifiutare le richieste; non aumenta la velocità di transizione.   Aggiungere altre istanze dell'applicazione può aumentare le prestazioni/velocità di trasmissione, a seconda dell'applicazione e dell'host.
Pass-header header none
Il nome di un'Intestazione di richiesta HTTP da inoltrare nell'ambiente request.  Questa opzione rende disponibile il contenuto delle intestazioni che solitamente non sono disponibili (e.g. Autorizzazione) per un ambiente CGI.
processes n (1)
Il numero di istanze dell'applicazione da creare nel momento in cui si inizializza il server.
Priority n (0)
La priorità del processo da assegnare alle istanze dell'applicazione (utilizzando setpriority()).
port n none
Il numero della porta TCP (1-65535) che l'applicazione utilizzerà per le comunicazioni con il server web.  Questa opzione rende l'applicazione accessibile da altre macchine sulla rete (come questa).  Le opzioni -socket e -port si escludono reciprocamente.
Restart-delay n (5 secondi)
Il numero minimo di secondi compresi tra la nuova creazione delle istanze non riuscite di questa applicazione.  Questo ritardo impedisce ad un'applicazione corrotta di assorbire troppo il sistema.
Socket filename (gen'd)
UNIX: Il nome file del socket del dominio UNIX che l'applicazione utilizzerà per comunicare con il server web.  Il modulo crea il socket all'interno della directory specificata da FastCgiIpcDir.  Questa opzione rende l'applicazione accessibile ad altre applicazioni (e.g. cgi-fcgi) sulla stessa macchina o tramite una definizione dell'applicazione FastCGI esterna (FastCgiExternalServer).  Se non si fornisce né l'opzione -socket né l'opzione -port, il modulo crea un nome file del socket del dominio UNIX.  Le opzioni -socket e -port si escludono reciprocamente.
Windows NT: Il nome del collegamento denominato che l'applicazione utilizzerà per le comunicazioni con il server web.  Il modulo crea il collegamento denominato fuori del root di collegamento denominato specificato da FastCgiIpcDir. . Questa opzione rende l'applicazione accessibile alle altre applicazioni (e.g. cgi-fcgi) sulla stessa macchina o attraverso una definizione dell'applicazione FastCGI esterna (FastCgiExternalServer).  Se non si forniscono le opzioni -socket e -port, il modulo crea un nome per il collegamento denominato.  Le opzioni -socket e -port si escludono reciprocamente.

 

FastCgiSuexec

La direttiva FastCgiSuexec viene utilizzata per abilitare il supporto per un suexec-wrapper.  FastCgiSuexec richiede che suexec sia abilitato in Apache (per CGI).  Per utilizzare lo stesso suexec-wrapper utilizzato da Apache, impostare FastCgiSuexec su On.  Per utilizzare un suexec-wrapper diverso, specificare il filename del suexec-wrapper.  Se il nome file non inizia con una barra (/) si presuppone che si riferisca a ServerRoot.

Quando si abilita FastCgiSuexec, l'ubicazione delle definizioni dell'applicazione FastCGI esterna o statica è importante.  Esse ereditano l'utente e il gruppo dalle direttive User e Group nel server virtuale nel quale sono state definite.  Le direttive User e Group devono precedere le definizioni dell'applicazione FastCGI.   Notare che questo non limita l'applicazione FastCGI al server virtuale nel quale sono state definite, l'applicazione può rispondere alle richieste provenienti da un qualsiasi server virtuale con lo stesso utente e gruppo.  Se si riceve una richiesta per un'applicazione FastCGI senza una definizione corrispondente esistente in esecuzione con il gruppo e l'utente corretti, viene avviata un'istanza dinamica dell'applicazione con l'utente e il gruppo corretti.   Questo può condurre a diverse copie della stessa applicazione in esecuzione con un diverso utente/gruppo.  Se ciò costituisce un problema, impedire la navigazione all'applicazione proveniente da altri server virtuali oppure configurare i server virtuali con lo stesso Utente e Gruppo.

Consultare la documentazione Apache per ulteriori informazioni su suexec (assicurarsi di comprendere chiaramente le implicazioni relative alla sicurezza).

Informazioni correlate