PHP包含路径问题
我已经设置了 apache,以便所有请求都转到文件 /var/www/common_index.php
现在,common_index.php 会查看请求的文件名并获取适当的文件 /var/www/123/public_html/requested_file.php
当我在requested_file.php 中包含文件(带有相对路径)时遇到问题。它尝试在 /var/www 而不是 /var/www/123/public_html/ 中搜索文件
如何解决这个问题?
I have set apache so that all requests go to a file /var/www/common_index.php
Now, common_index.php looks at requested file name and sources appropriate file
/var/www/123/public_html/requested_file.php
I am having problems when I include a file (with relative path) in requested_file.php. It tries to search for file in /var/www instead of /var/www/123/public_html/
How to solve this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以在
requested_file.php更改工作目录 code> 在调用
include
使其工作之前:或者对于 PHP 5.3+
如果您不想更改工作目录(这将影响其他文件系统操作),则只需在每次调用时附加路径即可使用 魔法常量
__DIR__
:路径相对于您使用上面代码的文件。
You can change the working directory in
requested_file.php
before callinginclude
to make it work:or for PHP 5.3+
If you don't want to change the working directory (which will affect other file system operations) then just append the path each time you do an include using the magic constant
__DIR__
:where the path is relative to the file where you used the code above.
在 Apache 配置中编辑 DocumentRoot。
将其设置为
/var/www/123/
Edit your DocumentRoot in your Apache config.
Set it to
/var/www/123/
您可以使用
__DIR__
:而
$path
包含包含此行的文件的路径You can use
__DIR__
:Whereas
$path
contains the path of the file which contains this line