php的不同路径要求包括vs插入其他资产。为什么呢?

时间:2015-11-30 18:21:53

标签: php apache server

我试图理解为什么一个代码块工作而另一个代码块没有工作。

我最近开始在专用服务器环境中工作。我之前的所有经验都是在共享服务器环境中。

作品

  <?php include('/home/benrud/public_html/student/webdesign/2015/4th/04_50/tinker/divLayout/assets/includes/menu/menu.php'); ?>

不起作用

<?php include('/student/webdesign/2015/4th/04_50/tinker/divLayout/assets/includes/menu/menu.php'); ?>

无效时收到错误

Warning: include(/student/webdesign/2015/4th/04_50/tinker/divLayout/assets/includes/menu/menu.php): failed to open stream: No such file or directory in /home/benrud/public_html/student/webdesign/2015/4th/04_50/tinker/divLayout/index.php on line 27

Warning: include(): Failed opening '/student/webdesign/2015/4th/04_50/tinker/divLayout/assets/includes/menu/menu.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/benrud/public_html/student/webdesign/2015/4th/04_50/tinker/divLayout/index.php on line 27

为什么php包含/home/benrud/public_html包含,但<img src="/student/webdesign/2015/4th/04_50/tinker/divLayout/assets/includes/menu/internships.jpg"/>适用于在同一页面中包含图像?

谢谢大家!

2 个答案:

答案 0 :(得分:1)

在HTML上,默认基本网址是当前网络服务器路径,它是www或public_html

在PHP上,基本URL是服务器的用户路径或根路径

换句话说,访问者无法访问/ home / benrud /他们只被授权访问public_html,但PHP可以访问大多数服务器目录

尝试在网址上使用../而不是/

答案 1 :(得分:0)

include使用内部引用,服务器使用自己的文件系统访问自身。虽然网页使用外部引用,但它们告诉客户的浏览器访问服务器的Web服务器。