我在使用vagrant环境中安装Symfony2时遇到了一些奇怪的问题。环境已经正确设置,正在运行一个web服务器,它正在服务于一个与vagrant共享的文件夹,该文件夹位于vagrant的基本目录中。
实际上,vagrant是在foo目录中启动的,然后在foo目录中有一个名为webroot的目录。Vagrant自动分享foo目录。设置了一个apache服务器以使webroot成为基本的http目录。这一切都很好地工作着,我可以提供基本的HTML、PHP文件,MySQL连接也测试过了,没问题。
我使用Composer按照推荐的方式安装了vagrant,安装到了/webroot/内的一个名为Symfony的目录。所有的文件现在都存在于正确的目录中。配置是正确的,在/config.php中没有Symfony声称需要更改的内容。
问题出现在我试图加载/app_dev.php时。它抛出一个异常,声称无法在/app目录中创建一个名为cache的文件。
因为我使用的vagrant环境不支持chmod +a,所以我选择通过取消注释app_dev中的umask(0000)来设置权限。假设这是一个权限问题,我尝试在vagrant环境中和osx中使用chmod将权限调整为777。
奇怪的是,当我在vagrant环境中对一个文件或目录进行chmod时,它声称正确地设置了777,但是当我运行ls -l时,权限没有变化。然而,当我从vagrant环境之外的webroot文件夹中对一个文件或目录进行chmod时,权限会保持不变。因为Symfony在环境中没有读写权限,所以它无法创建必要的缓存和日志文件。当我从osx的命令中运行Symfony时,一切都很顺利。
有人知道如何更改/webroot目录的权限,以便vagrant环境内的东西可以实际读写它,因为chmod似乎不起作用吗?
实际上,vagrant是在foo目录中启动的,然后在foo目录中有一个名为webroot的目录。Vagrant自动分享foo目录。设置了一个apache服务器以使webroot成为基本的http目录。这一切都很好地工作着,我可以提供基本的HTML、PHP文件,MySQL连接也测试过了,没问题。
我使用Composer按照推荐的方式安装了vagrant,安装到了/webroot/内的一个名为Symfony的目录。所有的文件现在都存在于正确的目录中。配置是正确的,在/config.php中没有Symfony声称需要更改的内容。
问题出现在我试图加载/app_dev.php时。它抛出一个异常,声称无法在/app目录中创建一个名为cache的文件。
因为我使用的vagrant环境不支持chmod +a,所以我选择通过取消注释app_dev中的umask(0000)来设置权限。假设这是一个权限问题,我尝试在vagrant环境中和osx中使用chmod将权限调整为777。
奇怪的是,当我在vagrant环境中对一个文件或目录进行chmod时,它声称正确地设置了777,但是当我运行ls -l时,权限没有变化。然而,当我从vagrant环境之外的webroot文件夹中对一个文件或目录进行chmod时,权限会保持不变。因为Symfony在环境中没有读写权限,所以它无法创建必要的缓存和日志文件。当我从osx的命令中运行Symfony时,一切都很顺利。
有人知道如何更改/webroot目录的权限,以便vagrant环境内的东西可以实际读写它,因为chmod似乎不起作用吗?