 |
Parent Path |
 |
| |
 |
|
|
Errori come questi:
- Server.MapPath()error
'ASP 0175 : 80004005' Disallowed Path Characters
- ASP error 0131
The include file "Include Name" cannot contain '..' to indicate the parent
directory
- The Page Cannot
Be Displayed - HTTP 500-Internal server error
sicuramente sono da imputare a percorsi errati che sono presenti all'interno del
codice che si sta testando, infatti tra le numerose novita' sulla
sicurezza introdotte in IIS6, c'e' ne una che
riguarda gli ormai famosi "Parent Path".
Contrariamente a quanto accadeva con precedenti versioni di IIS con l'introduzione
del nuovo IIS6, che e' presente nel sistema operativo Windows Server 2003, non e' piu'
possibile specificare un percorso relativo a cartelle superiori usando ../ per salire di livello, pertanto i percorsi a livelli superiori dovranno essere
obbligatoriamente
specificati in modo assoluto a partire dalla root del sito.
Ad esempio, se il vostro sito e' vostrodominio.it, la root del vostro sito,
secondo la sintassi Unix, deve essere indicata con il simbolo
/ che corrisponde all'indirizzo
http://www.vostrodominio.it, pertanto
anteponendo il simbolo / potrete quindi
indicare qualsiasi percorso all'interno del vostro spazio, quindi, per far funzionare un codice creato per precedenti versioni di IIS, e'
assolutamente necessario sostituire i percorsi
modificandoli da relativi ad assoluti, come nell'esempio che segue:
PATH RELATIVO: <!--#include file="../<filename.ext>"-->
PATH ASSOLUTO: <!--#include virtual="/<virtual path>/<filename.ext>"-->
Se state testando uno script o un programma scaricato dalla rete, prima di perdersi d'animo e dire che non funziona e' possibile provare ad abilitare i Parent Path per vedere se dopo funziona correttamente.
IMPORTANTE: dopo aver abilitato i Parent Path e dopo aver appurato che il codice
che state testando funziona correttamente e' fortemente sconsigliato lasciarli abilitati per molto tempo, pertanto, una volta verificato il corretto funzionamento
del codice con i Parent Path abilitati, consigliamo di modificare i vari percorsi presenti
nel codice e di provvedere alla loro disattivazione in quanto, lasciandoli
abilitati per molto tempo, si puo' precludere la sicurezza dell'intero sito web.
Per abilitare i Parent Path fare come segue:
- Entrare nel pannello di controllo PLESK
- Dal settore HOSTING cliccare nell'icona DIRECTORY WEB
- Adesso cliccare nell'icona PREFERENZE
- Inserire il flag nel check: consenti l'uso di percorsi principali
- Cliccare sul tasto OK per confermare l'operazione
Naturalmente, nonostante la modifica, se lo script o il programma non funziona
vuol dire che probabilmente c'e' qualche altro problema.
|