[Php-it] $_SERVER["DOCUMENT_ROOT"] in windows2003

Emiliano Gabrielli (aka AlberT) AlberT at superalbert.it
Wed Feb 28 10:08:16 CET 2007


On Wednesday 28 February 2007 09:22, Marco Sottana wrote:
> >> > ho installato php in IIS di un windows2003 e'
> >>
> >> sparito il
> >> $_SERVER["DOCUMENT_ROOT"]
> >>
> >> come faccio a riaverlo???
> >
> > Ce l' ha zio bill in ostaggio e vuole tanti $$$$$$$
> > per restituirvelo ... e' un rapimento con riscatto ...
> > si chiamano criminali e spesso lo fanno, lo fanno ...
> > ;)
>
> non c'e' nulla che mi fa ricostruire il document_root :(

polemica sui web server a parte...

ritengo sia intrinsecamente errato utilizzare la var in questione, almeno in 
questi termini.
Nelle miei applicazioni utilizzo sempre la tecnica di un file globale 
che tutti gli script includono(_once) .. tale script pensa sia alla eventuale 
autenticazione, che all'inclusione dei corretti file di configurazione, che 
alla definizione di alcune costanti di applicazione che gli script utilizzano 
e di cui non devono preoccuparsi... 

.. tra le suddette costanti in primis v'è la APP_SITEPATH e la APP_FULLURI in 
secundis...  

APP_SITEPATH non è altro che la DOCUMENT_ROOT dell'applicazionee viene 
calcolata in maniera sempliccissima ed a prova di errore:

realpath(dirname(__FILE__).'/../../') ... dove il numero di ".." è noto a 
priori al coder, essendo il numero di subdirectory rispetto alla root nella
quale è situato il global.inc.php (se è in include/global.inc.php ci sarà un 
solo "..") 

sono anni che uso questa tecnica e non ho mai avuto prob di portabilità, col 
maggior vantaggio che la tua app funziona sia che si trovi nella reale 
document_root, sia che sia in una sua sotto(-sotto-sottto) cartella..

Stesso discorso, ma un po' più complesso per l'altra var fondamentale 
APP_FULLURI ...


my 4 cents :-)
-- 
<?php echo '     Emiliano Gabrielli (aka AlberT)     ',"\n",
'              socio fondatore del GrUSP             ',"\n",
' AlberT_at_SuperAlberT_it   -   www.SuperAlberT.it  ',"\n",
'  IRC:    #php,#AES azzurra.com ',"\n",'ICQ: 158591185'; ?>



More information about the Php-it mailing list