2012-12-01 63 views
1

我已經創建了一個使用Xampp作爲本地服務器的網站。 我現在的問題是,我想每次從根目錄開始包含文件和設置鏈接。網站根目錄(使用Xampp)

我嘗試了很多方法,但仍然沒有人工作。 :(

試過之後在config.php文件已:

$docRoot = dirname(__FILE__).'/mywebsite/'; 
and also $docRoot = $_SERVER["DOCUMENT_ROOT"].'/mywebsite/'; 

對於包括它的工作是這樣的:

但它不工作的HTML鏈接

如果我嘗試使用$ docRoot類似的東西:

<a href="<?=$docRoot?>index.php"></a> 

結果:

C:/xampp/htdocs/mywebsite/index.php 

所以它不會重定向到其設置的鏈接...

,但它應該只是: 本地主機/ mywebsite/index.php文件

對不起我的英語,我正在學習它。 :d

感謝和問候

回答

1
<?php $docRoot= "http://" . $_SERVER['HTTP_HOST']. $_SERVER['REQUEST_URI']; ?> 

check this about $_SERVER variables

+0

感謝您的答覆! 但我之前也試過。結果是一個錯誤: 在服務器配置中禁用URL文件訪問.... – mastermind93

+0

@ mastermind93錯誤與php中的不同功能有關,您準備做什麼?你包括什麼東西? –

+0

我會盡力解釋它。 目錄結構如下所示: mywebsite(我的網站的根目錄下,這是XAMPP/htdocs中), mywebsite /包括(子目錄包括)和 mywebsite/FAQ/index.php文件 我會喜歡做: 1.在文件「mywebsite/faq/index.php」中包含子目錄「includes」中的functions.php,而不是每次都使用「../」。 2.我有一些照片,位於目錄「mywebsite/images」中。因此,我希望在文件「mywebsite/faq/index.php」中顯示圖像,而不要使用「../」,只需像$ docRoot/images。 – mastermind93

1

你正在嘗試做的是包括從你的文件夾中的本地文件,你不必使用URL來做到這一點,你必須使用本地文件路徑,文件,你爲什麼不嘗試這樣

<?php 
// inside a config file 
define('DS' , '/'); 
define('LOCAL_DIR' , 'mysite'); 
define('ROOT_PATH' , $_SERVER["DOCUMENT_ROOT"] . DS . LOCAL_DIR . DS); 
define('BASEURL' , $_SERVER["HTTP_HOST"] . DS . LOCAL_DIR . DS); 
?> 

所以每當你想包括任何其他腳本中的文件,可以使用:

<?php 
include(ROOT_PATH . 'your_includes_directory/filename.php'); 
?> 

,只要你想打印一個鏈接,你使用這樣的:

<a href="<?=BASEURL;?>filename.php?var1=asd>Link to file</a>