如何在调用文件时引用localhost或我的域名?

时间:2011-04-02 19:29:53

标签: php relative-path

我一直在开发一个网站,但我先在我的本地机器上开发。我可以通过浏览器使用http://localhost/whatever访问此内容,实际文件位于/ var / www /下。但是,我的Web服务器上的文件系统结构不同;我的文件在主文件夹中。

我也开始进行重组,以便将模块放在单独的文件夹中,而不是将所有内容放在一个目录中。因此,我正在寻找一种在每种情况下引用我的“基础”目录的方法。鉴于结构可能在未来发生变化,我想要一种方法来引用文件,而无需在上传到我的实时网站后更改这些调用。

EG。 <link rel="stylesheet" type="text/css" href="style.css">

如果我从includes/header.php拨打此电话,然后从多个不同的文件位置拨打includes/header.php,则会告诉我由于显而易见的原因找不到style.css:{{ 1}}不在那些文件夹中!

换句话说,目标是某种相对路径,可以在具有不同目录结构的两个地方之间进行管理。

3 个答案:

答案 0 :(得分:0)

有时使用的解决方案是将网站根目录的绝对URL存储到变量中:

$root = 'http://www.yoursite.com';

获得此目的的两种方法:

  • 如果要将应用程序部署到一个非常不寻常的位置,可以在配置文件中设置
  • 另外,这通常可以从$_SERVER中的一个项目确定。

注意:您可能更喜欢使用常量而不是变量。


然后,在所有<link><script>,...标记中,使用该变量来获得正确的绝对路径:

<link href="<?php echo $root; ?>/css/style.css";

当然,这意味着您的style.css必须始终保留在css文件夹中 - 但情况可能会如此,不是吗?

答案 1 :(得分:0)

我认为this post正是您所寻找的。

答案 2 :(得分:0)

$_SERVER['DOCUMENT_ROOT']

应获取服务器根路径,也位于“www”文件夹

下方