【问题标题】:setting up testing environment with Vagrant Virtual Machine and Nginx使用 Vagrant 虚拟机和 Nginx 设置测试环境
【发布时间】:2018-03-28 09:39:14
【问题描述】:

我正在尝试在 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 配置?

【问题讨论】:

    标签: linux ssl nginx vagrant webserver


    【解决方案1】:

    不确定这是否有帮助,我运行 vagrant 并使用 Virtualbox 作为我的管理程序。您需要检查 vagrant box 为 NAT 做了什么。在我的设备上,它是 192.169.33.10,它将进入我的开发箱。假设端口转发设置正确且没有防火墙。

    192.168.33.10:8080 是做什么的?

    【讨论】:

    • 感谢您的回复,如果我向 192.168.33.10:8080 发送 HTTP 请求,我还没有将我的 'config.vm.network :private_network' 设置为任何 IP 地址稍等片刻,给我一个超时,让我先尝试设置专用网络。
    • 好的,一旦我设置并重新启动我的流浪者,我试图连接到 192.169.33.10:8080,它说连接被拒绝,192.168.33.10 拒绝连接。
    • 这里是我的流浪文件的重要部分:config.vm.network "private_network", ip: "192.168.33.10" 和 config.vm.network "forwarded_port", guest:8000, host: 8000
    • 我使用的虚拟机镜像。签出流浪文件link
    • 好的,那么我需要配置我的 nginx 监听 192.169.33.10 吗?我最近才知道 127.0.0.1 是一个指向 localhost 本身的环回地址,建议不要使用这个地址。
    猜你喜欢
    • 1970-01-01
    • 2013-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多