2011-04-02 43 views
0

我一直在開發一個網站,但我先在本地機器上開發。我可以通過我的瀏覽器訪問http://localhost/whatever,實際文件位於/ var/www /下。但是,我的Web服務器上的文件系統結構不同;我的文件在主文件夾中。如何在調用文件時引用localhost或我的域名?

我也開始重組,使我將模塊放在單獨的文件夾中,而不是一切卡在一個目錄中。因此,我正在尋找一種方法在每種情況下引用我的「基礎」目錄。考慮到未來結構可能會發生變化,我想要一種方式來引用文件,而無需在上傳到我的現場網站後更改這些呼叫。

例如, <link rel="stylesheet" type="text/css" href="style.css">

如果我把這個從includes/header.php,然後我打電話includes/header.php從許多不同的文件位置,它告訴我,它沒有明顯的原因找到style.cssstyle.css是不是在這些文件夾!

換句話說,目標是某種在兩個不同目錄結構之間可以管理的相對路徑。

回答

0
$_SERVER['DOCUMENT_ROOT'] 

應該得到服務器的根路徑,也低於「WWW」文件夾

+0

非常感謝!無論其他響應的正確性如何,這完全符合我的需求。 – Paragon 2011-04-03 21:19:44

0

這有時也使用的解決方案是將您的網站的根目錄的白金URL存儲到一個變量,一旦:

兩種方式來獲得這樣的:

  • 如果部署你的應用程序到一個非常不尋常的位置,你可以在你的配置文件中設置
  • 否則,這通常可以從$_SERVER中的一個項目來確定。

注意:您可能更喜歡使用常量,而不是變量。


,然後,在所有<link><script> ......標籤,使用該變量有一個正確的絕對路徑:

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

當然,這意味着你的style.css必須留在css文件夾,總是 - 但它可能會是這種情況,不是嗎?

相關問題