我已设置了带有 Debian 6.0 的 VirtualBox 来充当 Web 服务器。主机是运行 OS X 10.7.3 的 PowerBook。
我有/User/cb0/Sites
一个 symfony 中的 web 项目,我曾经在 OS X 下进行开发。
现在我已经将该目录安装到/var/www/host-sites
虚拟机中,因此我拥有一个与生产环境完全一样的环境。
问题是 php 出于某种原因无法执行已安装目录中的文件。当我调用时,index.php
我看到一个白页,前端和任何 apache/系统日志中都没有错误消息。
如果我在非共享目录中创建一个文件phpinfo();
,然后通过 CLI 或 Web 浏览器执行该文件,我就会得到所需的输出。
但是,当我调用共享目录中的同一个文件时,没有得到任何输出。
挂载的文件系统是可读/可写的,并且运行正常。即使是静态文件也能正确传送。只有 php 什么都不做。
有人知道可能是什么问题吗?
我已经遵循了这个建议,它对我帮助很大:如何将 Apache2 DocumentRoot 设置为“vboxsf”VirtualBox 共享文件夹?(权限问题?)
答案1
检查挂载上的选项。“noexec”是否已启用?
答案2
我通过重新安装 VB Guest Addon 解决了这个问题。
这个帖子https://forums.virtualbox.org/viewtopic.php?f=29&t=15679详细解释了如何做到这一点。
如果您有任何相关问题,pbr 答案也是一个好主意。
这是我现在的 rc.local:
sudo mount -t vboxsf -o rw,exec,uid=1000,gid=1000 Sites /var/www/host-sites/