我正在尝试设置一个相当复杂的开发环境作为虚拟 Ubuntu 12.04 服务器。
为了我可以编辑文件并在刷新页面时立即看到更改,正如您在正常本地开发情况下所期望的那样,我在 ~/www/site1 中拥有主机操作系统(mint 14)上的 php 源代码我已将其作为持久共享文件夹添加到 virtualbox,然后安装在虚拟机上
mount -t vboxsf site1 /var/www
如果我 ls /var/www -la 我看到所有的 php 文件,但是当我尝试从浏览器访问虚拟机时,我在页面上得到 File not found 错误,并且子域的 error.log 报告在 stderr 中发送的 FastCGI :“从上游读取响应标头时,主脚本未知”。例外是子域 phpmyadmin.virtualmachine,它可以完美加载,所以我知道 nginx 正在为请求的子域提供正确的文件结构。
作为测试,我创建了一个指向 /var/test 的子域 info.virtualmachine 并且 index.php 是最简单的 phpinfo() 并且它有效,所以我只能假设 nginx 没有读取挂载的 vboxsf 文件结构 /var/www正确,因为来宾操作系统上的所有“本地”文件都是可见的。
Nginx 已配置为与所有其他服务一样以 root 身份运行。这是 nginx 的已知错误还是我需要配置以允许 nginx 查看已安装的 vboxsf 共享?