将 URI 反向代理到 Vagrant box

Reverse proxy a URI to a Vagrant box

我有一个通过 URL localhost:9001(转发端口)访问的 Wordpress Vagrant 框。

我目前正在尝试通过 URL "molecare.dev".

访问它

我在主机文件中创建了捕获 URL 并将其指向我的本地主机的行(这是有效的,因为我可以看到 nGinx 启动页面)但是我无法捕获这个 URL 在服务器块和 proxy_pass'ing 到 URL(localhost:9001).

这是我的 /etc/nginx/sites-available/default 文件`server_name molecare.dev;

server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;

    root /usr/share/nginx/html;
    index index.html index.htm;

    # Make site accessible from http://localhost/
    server_name localhost;

    location / {
            # First attempt to serve request as file, then
            # as directory, then fall back to displaying a 404.     
            try_files $uri $uri/ =404;
            # Uncomment to enable naxsi on this location
            # include /etc/nginx/naxsi.rules
    }

我写了下面的代码,我认为应该这样做,但我不知道把它放在哪里,它是否正确?

server {
    listen 80;
    server_name molecare.dev;

    location / {
            proxy_pass localhost:9001;
    }

}

谁能看看这是否正确,如果正确的话我把它放在哪里了?

谢谢!

在文件夹 /etc/nginx/sites-available/ 中为您的站点创建一个配置文件,比如 'molecare.dev.conf'。

将你写的block修改为如下内容,放入新文件中保存:

server {
    listen 80;
    server_name molecare.dev;

    location / {
            proxy_pass      http://127.0.0.1:9001;
            proxy_redirect  off;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}    

然后创建符号链接:

ln -s /etc/nginx/sites-available/molecare.dev.conf /etc/nginx/sites-enabled/molecare.dev.conf

重新加载 nginx 配置:

service nginx reload