我试图使用绝对路径来设置锚点的href。然而,路径不起作用,但如果我改为相对路径,一切正常。
使用:
include_once('../../Utils/utils/html/banner.html');
不起作用:
include_once('http://localhost/apps/MyVyn/Utils/utils/html/banner.html');
include_once('/apps/MyVyn/Utils/utils/html/banner.html');
我究竟做错了什么?
答案 0 :(得分:2)
让我们来看看这两个例子:
include_once('http://localhost/apps/MyVyn/Utils/utils/html/banner.html');
由于apps文件夹不在文档根目录中,因此无法正常工作。 PHP(具有apache /或其他任何适当的权限)将能够访问文件系统上的任何内容。指向127.0.0.1,localhost或网站名称的直接链接只能访问文档根目录上的文件。
include_once('/apps/MyVyn/Utils/utils/html/banner.html');
这不会起作用,因为您要求PHP在驱动器的顶级文件夹中查找文件夹/apps
。例如,/root/*
,而是您说,/apps/*
不存在。
将/apps/
视为C:\apps
,而apps/*
则不存在。如果您希望PHP查看同一目录中的文件夹,则需要删除前导斜杠,例如{{1}}。
答案 1 :(得分:2)
如果你想要更多的"绝对"路径,您可以使用$ _SERVER [' DOCUMENT_ROOT']添加您的包含路径。只是一个想法。
include_once($_SERVER['DOCUMENT_ROOT'] . '/apps/MyVyn/Utils/utils/html/banner.html');