2008-10-08 15 views

Répondre

28

Les chemins absolus commencent par/et renvoient à un emplacement à partir de la racine du site actuel (ou de l'hôte virtuel).

Les chemins relatifs ne commencent pas par/et se réfèrent à un emplacement à partir de l'emplacement réel du document auquel la référence est faite.

Exemples, racine en supposant est http://foo.com/site/

Chemin absolu, peu importe où nous sommes sur le site

/foo.html 

se référera à http://foo.com/site/foo.html

Chemin relatif, en supposant le lien contenant est situé dans http://foo.com/site/part1/bar.html

../part2/quux.html 

se référera à http://foo.com/site/part2/quux.html

ou

part2/blue.html 

fera référence à http://foo.com/site/part1/part2/blue.html

+0

Nice et facile à comprendre - Merci :) – radbyx

3

Il est important de noter que les chemins relatifs sont également subjective.

-à-dire:

<?php 
    #bar.php 
    require('../foo.php'); 
?> 
 
/dir/bar.php 
/foo.php   # prints a 
/dir/foo.php # prints b 
/dir/other/ # empty dir 
 
$ pwd 
>/
$ php dir/bar.php 
>/+ ../foo.php == /foo.php 
> prints a 
$ cd dir 
$ php bar.php 
> /dir + ../foo.php = /foo.php 
> prints a 
$ cd other 
$ php ../bar.php 
> /dir/other + ../foo.php = /dir/foo.php 
> prints b 

Cela peut créer des situations assez confuses, surtout si vous avez beaucoup de fichiers avec des références releative et plusieurs endroits possibles qui peuvent agir comme un « point d'entrée » qui contrôle ce que le chemin relatif est relatif.

Dans de telles situations, il faut calculer le chemin absolu sur la base manuellement sur un fixe connu, à savoir:

<?php 
    require(realpath(dirname(__FILE__) . '/../foo.php')) 

ou

<?php 
    require(SOMECONSTANT . '/relative/path.php' ); 

ou

<?php 
    require($_SERVER['DOCUMENT_ROOT'] . '/relative/path.php'); 
1

Par essais et erreurs J'ai déterminé que le point de départ d'un chemin dans Tomcat est le dossier webapps. En d'autres termes, si votre code Java essaie de lire ../somefile.txt, alors le chemin absolu vers ce fichier sera% TOMCAT_HOME%/webapps /../ quelquechose.txt ie% TOMCAT_HOME%/webapps/unfichier .txt