我可以访问本地主机的某些区域,但无法访问其他区域例如
-
我可以访问
localhost/index.php
,localhost/somefolder/
-
但不是
localhost/somefolder/anotherfolder
我也无法从 php 内部anotherfolder
include
任何文件,因为它说failed to open stream: No such file or directory
我有chmod -R 755 www
但仍然无法访问子目录
可能是什么原因?
检查该机器上是否运行了 SELinux。然后在您可以查看的目录和不能查看的目录上执行 ls -alZ。如果您启用了 SELinux,则无法查看的目录的安全组可能未设置为 http 安全组。我相信这应该是system_u:object_r:httpd_sys_content_t
大意。
检查您的系统上是否启用了 SELinux /etc/selinux/config
。如果是,请转到遇到问题的目录并键入:chcon -Rv --type=httpd_sys_content_t <directory name>
。这会将httpd内容安全标志添加到该目录及其下的所有内容,从而允许apache访问它。
如果您的文件夹中没有"index.html"(或index.php),则无法在不向公众公开目录的情况下访问它们。默认情况下应该禁用它,但是对于您的包含问题,我需要一些代码和目录树。