7

我正在使用 vagrant 使用 ubuntu、apache 等运行我的 vm。这是在我的 OSX 主机上运行的。

一切正常,直到我的 php 应用程序尝试创建文件夹、该文件夹中的文件等。我被拒绝权限。我在 vagrant 文件的提供/配置中缺少什么?

4

3 回答 3

25

在这种情况下,如果你使用 Vagrant + Apache2。

解决方案是:

  1. 编辑/etc/apache2/apache2.conf;
  2. 搜索用户指令
  3. 将这些行更改为:

    User vagrant
    Group vagrant
    
  4. sudo service apache2 restart

无法将 /vagrant 目录所有者更改为 www-data(apache 用户);

无论如何,它对我有用。

于 2013-11-07T18:14:42.870 回答
5

编辑 Vagrant 文件

  config.vm.synced_folder "./", "/var/www", owner: "www-data", group: "www-data"
于 2015-07-15T06:43:03.870 回答
2

您需要将 php 尝试写入的文件夹的所有者设置为 apache 用户,该用户通常是 www-data... ssh 进入 vagrant 框并尝试:

sudo chown www-data:www-data <dirname>

那应该可以工作...如果可以,那么只需将其添加到您正在使用的任何配置程序中。

于 2013-05-16T20:58:01.980 回答