![]() |
|
| Codice Indipendente dal Server |
Spesso gli script utilizzati nel proprio sito sono dipendenti dal server, ovvero il codice e' stato scritto facendo riferimento a caratteristiche specifiche del server su cui vengono utilizzati.
Nel caso si desiderasse utilizzare tali script su server differenti (ad esempio, se si effettua un cambio di piano, oppure se si intende utilizzare il medesimo script su piu' account) potrebbe essere necessario riscrivere parte del codice per adattarlo al nuovo ambiente di esecuzione.Per questo motivo, e' buona regola scrivere programmi il piu' possibile indipendenti dall'ambiente di esecuzione, in modo che questi possano funzionare correttamente a prescindere dal tipo di server in cui vengono eseguiti.
Il tipo pių comune di codice dipendente dal server č il codice che accede a file o programmi usando un path assoluto (come "/www26/web/directory/un_file").
Invece di utilizzare il path assoluto per la propria directory di home ("/www26/web/directory"), bisognerebbe utilizzare la variabile ambiente DOCUMENT_ROOT ($ENV{DOCUMENT_ROOT} in Perl) per ricavare il path dei file o programmi a cui lo script deve accedere.Ad esempio, in uno script di registro visitatori la linea
$guestbook = "/www23/web/examp9/data/guest.html";Andrebbe modificata in:
$guestbook = "$ENV{DOCUMENT_ROOT}/data/guest.html";Se si sviluppano script per conto terzi, e' conveniente utilizzare il piu' possibile le numerose variabili ambientali che consentono la scrittura di codice indipendente dal server:AUTH_TYPE
funziona solo per la visualizzazione di pagine protette da password. Quando si visualizza una pagina web protetta da password, questa variabile restituisce tipo di autenticazione utilizzata.DOCUMENT_NAME
Il nome del file.DOCUMENT_URI
L'URL del documento (path e nome di file)GATEWAY_INTERFACE
Il nome e il numero di versione del software gateway utilizzato sul server. (CGI/1.1)HTTP_USER_AGENT
Il client o web browser utilizzato dal visitatore. (Mozilla/4.0)LAST_MODIFIED
La data dell'ultima modifica del documento attuale. (Tue, 03 Mar 1998)PATH
I path disponibili all'utente "nessuno" del web server.REMOTE_USER funziona solo per la visualizzazione di pagine protette da password. Quando si visualizza una pagina web protetta da password, questa variabile restituisce lo "username".
REQUEST_METHOD
Il metodo con il quale il web browser del visitatore richiama le pagine web. Le opzioni sono GET e POST.REMOTE_HOST
Tradotto della macchine (dell'utente).REMOTE_ADDR
L'indirizzo IP del visitatore
SCRIPT_NAME
Il nome dello script in esecuzione. (/www26/web/directory/filename)SERVER_SOFTWARE
Il nome del software web server attualmente in esecuzione.SERVER_NAME
Questo nome macchina, o piuttosto, quello che la macchina pensa sia il suo nome.SERVER_PORT
Porta http/web standard.SERVER_PROTOCOL
Il nome e numero di versione del protocollousato su questo server. (HTTP/1.0)(Nota: quando si scrivono script o formule da utilizzare con procmail, si deve usare la variabile ambientale HOME al posto di DOCUMENT_ROOT. Le variabili ambientali CGI non sono disponibili sotto procmail.)