Apache / PHP无法访问已安装的驱动器

时间:2015-04-09 21:22:35

标签: apache external mount

我正在尝试从PHP / Apache(LAMP @ CentOS)中访问已安装的驱动器。例如,做一个scandir:

scandir($dir);

虽然这适用于Apache安装在同一物理磁盘上的任何目录(包括root,var等等),但它不适用于外部安装的磁盘:

scandir('/var/log');位于本地驱动器上,也包含/ var / www / html

提供有效输出,而

scandir('/mnt/data');(这是对外部fs的装载)不会。

我一直在试验文件系统权限和httpd.conf指令(别名/目录),但还没有找到解决方案。

有人能指出我如何从apache / PHP访问外部驱动器(/ mnt / whatever)的方向吗? THX!

1 个答案:

答案 0 :(得分:0)

如果进程可以看到挂载点,则它将能够访问其中的文件,前提是权限(包括acls和任何MAC系统允许)(MAC在此指的是强制访问控制系统,即selinux和apparmor)。

您的权限需要更改,或者Web服务器在chroot环境中运行(例如它看起来/确实是/ var / websrv /),或者您没有对httpd配置进行正确的更改。

由于您未提供有关系统配置方式的详细信息,因此未提供您已尝试过的更多信息。