在PHP中使用根目录

时间:2018-10-12 14:25:01

标签: php directory

当我尝试使用/从网站根目录打开文件时,出现此错误:

  

严重错误:require():需要打开失败   '/templates/header.php'(include_path ='。:/ usr / local / php70 / pear')在   /home/cultureh/public_html/staging/index.php,第3行

但是当我使用../等相对目录时,它可以正常工作。根目录方法为什么不起作用?

1 个答案:

答案 0 :(得分:0)

在基于Linux的操作系统中,/是指服务器根目录。 Apache和其他Web主机通常无权访问此目录。要获得相对目录,只需排除前导/,它将与文件所在的目录相关。

对于我的网站,由于我的文件分散在3-4深的树形结构中,因此我使用了一个引导文件,该文件首先在所有包含此文件的页面加载中加载:

DEFINE('ROOT_PATH', dirname(__DIR__));

当然,这假定您的引导文件位于站点根目录中。如果您的引导文件位于子目录中,则可以调整常数以升至目录。然后,当您要使用保证相对于站点根目录的路径时,只需输入:ROOT_PATH . '/templates/header.php'