当我包含这样的文件时:include("/testsitedir/include/subdir/inc.php");
在文件夹中命名this.php
的文件上testsitedir
,我得到了典型的failed to open stream: No such file or directory in ...\testsitedir\this.php
错误。
但是,当我编写一个简单的 HTML 锚标记时:<a href="/testsitedir/include/subdir/inc.php">Test Link</a>
(URL 与包含的相同)浏览器会自动为我解析 URL,并知道它/
表示我的站点根目录。
那么,如何让我的包含以与 HTML 锚标记相同的方式解析 URL?
为了更好地理解,这就是我想要做的。我有一个头文件位于content
站点根目录中名为的子目录中。我试图弄清楚如何使用相同的 URL 在每个文件中包含标题。我的方法是只使用头文件的绝对 URL。这已成为一个问题的原因是因为我希望能够使用单个CONSTANT
. 此外,站点的根目录并不总是服务器的根目录。因此,当我想将站点放在服务器上的子目录中时,我会www.example.com/view/site/siteroot/
定义一个常量并包含任何文件,但包含无法识别SITE_ROOT
/view/site/siteroot
include(SITE_ROOT."/includes/file.php);
/
正斜杠作为站点根分隔符。url_include
我打算使用实际的站点名称,但出于安全原因我不想启用。