Home >Backend Development >PHP Tutorial >php访问根目录有有关问题

php访问根目录有有关问题

WBOY
WBOYOriginal
2016-06-13 11:55:17901browse

php访问根目录有问题?
我用的系统是CentOS,网站根目录是/var/www/html,根目录放有head.inc.php,当我在index.php里require('head.inc.php')时一切正常,require('./head.inc.php')时也正常,就是require('/head.inc.php')时候发现failed to open stream: No such file or directory的错误

前面的斜杠代表的是根目录,难道我设置有误?Apache的DocumentRoot和Directory都设置成了/var/www/html,www,html和文件都设置成了rwxr-xr-x,还有其他需要设置的吗?谢谢!
------解决方案--------------------
require('/head.inc.php') 指 /var/www/html/head.inc.php 也就是php认为head.inc.php是一个在html路径下的目录,而不是一个php文件。
------解决方案--------------------
require 使用的是文件系统的路径而不是 web 的路径

------解决方案--------------------
是不是你这个网站节点的根目录没配置好!
------解决方案--------------------

引用:
谢谢changjay和xuzuning,但是dirname(__FILE__)获取的是当前文件的路径吧?我要获取根目录,例如有个子目录文件/var/www/html/report/index.php同样也要reqire根目录下的head.inc.php,如果用dirname(__FILE__)的话,就变成了require '/var/www/html/report/head.inc.php'

版主提到的是文件系统的路径,我想可能是这个原因,我试下改成/var/www/html/head.inc.php


如果有配置文件的话,可以在配置文件里先把网站根目录赋值给一个变量,然后在需要的地方使用。
------解决方案--------------------
引用:
发现还有个变量$_SERVER['DOCUMENT_ROOT'],我用这个变量替代/又可以了

就是直接用/为什么还不可以


接受傳統及大眾的做法: 使用你最早的方式 ./  除非你的是打算在命令行下執行的腳本那麽就請將路徑寫全.
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn