Vagrant file_put_contents权限被拒绝

时间:2015-06-15 20:02:56

标签: php vagrant

我似乎无法在vagrant中允许权限。我试图运行importbuddy.php以迁移WordPress实例。我收到以下错误。

file_put_contents(/path/): failed to open stream: Permission denied

我在www目录上设置了777的权限,但没有任何改变。有关如何解决此问题的任何想法?

1 个答案:

答案 0 :(得分:2)

虽然以递归方式将文件夹和文件权限设置为777应该可以解决您的问题(执行此操作的说明here),但这可能是文件和文件夹所有权的问题。

共享文件夹的所有者通常是“流浪汉”'但是服务器本身(如果你正在使用Ubuntu)作为用户和组运行www-data'。您可以通过sshing到VM(vagrant ssh),导航到相关目录并在控制台中输入ls -l来查看文件的用户/组。

如果你正在运行apache,那么你可以将用户更新为' vagrant'通过编辑以下文件(/etc/apache2/envvars),如下所示:

查找此部分

export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data

并将其更改为

export APACHE_RUN_USER=vagrant
export APACHE_RUN_GROUP=vagrant

之后只需确保重启apache(使用此命令sudo service apache2 restart)并修复文件权限错误