绝对路径&相对路径

时间:2008-10-08 08:21:48

标签: tomcat path relative-path

绝对路径和路径之间有什么区别?使用任何Web服务器或Tomcat时的相对路径?

5 个答案:

答案 0 :(得分:28)

绝对路径以/开头,并引用当前站点(或虚拟主机)根目录中的位置。

相对路径不以/开头,并且从引用文档的实际位置引用位置。

示例,假设root为http://foo.com/site/

绝对路径,无论我们在网站上的哪个位置

/foo.html

将参考http://foo.com/site/foo.html

相对路径,假设包含链接位于http://foo.com/site/part1/bar.html

../part2/quux.html

将参考http://foo.com/site/part2/quux.html

part2/blue.html

将参考http://foo.com/site/part1/part2/blue.html

答案 1 :(得分:3)

http://www.communitymx.com/content/article.cfm?cid=AEDCC52C4AD230AD应该解释一切。

详细介绍了绝对路径,相对路径和文档路径之间的区别。

答案 2 :(得分:3)

重要的是要注意相对路径也是主观的。

即:

<?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

这可能会造成一些相当混乱的情况,特别是如果你有许多带有相关引用的文件和多个可能作为控制相对路径相对的“入口点”的可能位置。

在这种情况下,应该根据固定的已知方法手动计算绝对路径,即:

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

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

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

答案 3 :(得分:1)

可以查看此链接以获得简单说明 http://www.computerhope.com/jargon/a/absopath.htm

答案 4 :(得分:1)

通过反复试验,我确定Tomcat中路径的起点是webapps文件夹。

换句话说,如果你的Java代码试图读取../somefile.txt,那么该文件的绝对路径将是%TOMCAT_HOME%/ webapps /../ somefile.txt,即%TOMCAT_HOME%/ webapps / somefile。 TXT