使用nginx的Vagrant文​​件夹权限

我是新来的stream浪汉,有问题得到正确的工作。 它运行良好的端口转发,我可以访问它。 但是,我有困难得到凉亭和吞咽正常工作。

这个问题似乎源于www-data / www-data拥有的/ var / www目录。 即使在向www数据组中添加vagrant之后,stream浪使用者也不具有对任何目录的写权限。 我甚至无法使用sudo chmod将写入权限添加到任何文件。

任何时候我尝试运行bower,gulp甚至git都不会获得拒绝访问权限的错误。

任何帮助将不胜感激。

stream氓文件:

 # -*- mode: ruby -*- # vi: set ft=ruby : VAGRANTFILE_API_VERSION = "2" Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.box = "hashicorp/precise32" config.vm.network :forwarded_port, guest: 80, host: 8080, auto_correct: true config.ssh.private_key_path = ['~/.vagrant.d/insecure_private_key', '~/.ssh/id_rsa.pub'] config.ssh.forward_agent = true config.vm.synced_folder "/home/develop/b3c-dev", "/var/www", create: true, group: "vagrant", owner: "www-data" config.vm.synced_folder "/home/vagrant/b3c_ee/provision", "/var/provision", create: true, group: "root", owner: "root" config.vm.provider "virtualbox" do |v| v.name = "B3C Expression Engine Dev Vagrant" v.customize ["modifyvm", :id, "--memory", "1024"] end config.vm.provision "shell", path: "provision/setup.sh" end 

Nginxconfiguration:

 server { listen 80; server_name test.dev www.test.dev; root /var/www/public/; index index.php index.html; access_log /var/log/nginx/b3c-dev-access.log; error_log /var/log/nginx/b3c-dev-error.log info; # Important for VirtualBox # sendfile off; location / { index index.php; try_files $uri $uri/ @ee; } location @ee { rewrite ^(.*) /index.php?$1 last; } location ~* \.php { include fastcgi_params; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_cache off; fastcgi_index index.php; } } 

我会加载与vagrant作为所有者和组的共享文件夹,然后更改用户和组在/etc/php5/fpm/pool.d/www.conf

要更改php-fpm的配置中的用户和组,只需将它们添加到provision/setup.sh的末尾即可:

 sed -i 's/user = www-data/user = vagrant/g' /etc/php5/fpm/pool.d/www.conf sed -i 's/group = www-data/group = vagrant/g' /etc/php5/fpm/pool.d/www.conf 

如果这没有帮助,请尝试递归地增加/var/www的权限。

还值得注意的是,你的config.ssh.private_key_path指向你的公钥而不是你的私钥。