我正在使用以下Vagrantfile来安装nginx。在我跑过来之后,http://192.168.33.14/
的请求从nginx返回404。在我运行'vagrant reload'之后,向http://192.168.33.14/
发出请求返回预期的代理结果。用vagrant/chef-solo安装nginx后,需要使用vagrant reload来运行
我希望代理能够像流浪者一样按预期工作。我在运行nginx食谱后正在编写配置更改,因此我怀疑在编写配置文件后需要重新加载nginx。我尝试了一个运行sudo /usr/sbin/nginx -s reload
的shell提供程序,该操作失败,出现nginx: [error] open() "/var/run/nginx.pid" failed (2: No such file or directory)
。
Vagrant.configure("2") do |config|
config.vm.box = "opscode-ubuntu-14.04"
config.vm.box_url = "http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_ubuntu-14.04_chef-provisionerless.box"
config.omnibus.chef_version = :latest
config.vm.provision "shell", inline: "echo 'set nocp' > /home/vagrant/.vimrc"
config.vm.define "nginx" do |nginx|
nginx.vm.network "private_network", ip: "192.168.33.14"
nginx.vm.provision :chef_solo do |chef|
chef.cookbooks_path = "cookbooks"
chef.add_recipe "nginx"
chef.json = {
:nginx => {
dir: '/etc/nginx' # this is the default value, sample only
}
}
end
nginx.vm.provision "shell",
inline: "echo -e $1 > /etc/nginx/conf.d/nginx.conf",
args: [<<-EOS
server {
listen *:80;
location ~ ^/ {
proxy_pass http://192.168.33.11:8080;
}
}
EOS
]
end
这个问题似乎属于对堆栈交换网络中的其他网站,因为它不是关于节目。也许[超级用户](https://www.superuser.com/)或[服务器故障](http://serverfault.com/)。 – jww
我认为你应该尝试这本食谱http://community.opscode.com/cookbooks/nginx和当启动或停止nginx服务,尝试命令为:服务nginx开始 – Makio