我正在尝试在 centos/6 虚拟机上使用 Vagrant 设置本地 Web 测试环境
我在 vagrant 配置中设置:config.vm.network "forwarded_port", guest: 80, host: 8080
如果我在 vagrant box 里面输入:hostname -I
它会给我一个结果
10.0.2.15
In the vagrant box, nginx is already set and I do have a SSL certification and HTTPS connection set up:
server {
listen 443;
server_name 127.0.0.1:8000;
...(other configurations including ssl_certificate,
ssl_certificate_key,protocols and cipher)
...(other values that I think its not relevant)
location / {
if ($http_host != 127.0.0.1:8000) {
return 444;
}
proxy_pass http://127.0.0.1:8000;
}
然后我有:
server {
listen 80 default;
server_name ~^;
return 302 https://127.0.0.1:8000$request_uri;
}
在我的 vagrant box 中,如果我使用 curl
获取 127.0.0.1:8000 的内容:curl 127.0.0.1:8000
,我能够成功得到预期的内容
在我的主机操作系统中,当我使用 chrome 请求访问 127.0.0.1 时,它只是说 The connection was reset.
并且错误异常代码是 ERR_CONNECTION_RESET
我最好的猜测是这必须处理我的 SSL 配置?
最佳答案
不确定这是否有帮助,我运行 vagrant 并使用 Virtualbox 作为我的管理程序。您需要检查 vagrant box 为 NAT 做了什么。在我的设备上,开箱即用的是 192.169.33.10,它将进入我的开发箱。假设端口转发设置正确且没有防火墙。
192.168.33.10:8080 有什么作用?
关于linux - 使用 Vagrant 虚拟机和 Nginx 设置测试环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46777558/