Nginx Config:前端反向代理到另一个端口


22

我有一个小型Web服务器,可在端口5010而不是80上提供请求。

我想使用nginx作为前端代理,以在端口80上接收请求,然后让这些请求由端口5010处理。

我已经成功安装了nginx,它可以在Ubuntu Karmic上顺利运行。

但是,我尝试重新配置默认的nginx.conf失败。

我尝试在服务器指令中包括端口5010的listen参数。

我也尝试过proxy_pass指令。

为了只进行端口转发,需要对更改做出任何建议或需要设置指令。

Answers:


22

我假设nginx不是服务器监听端口5010以及端口80,对吗?在5010上监听了其他消息,您是否希望该服务器具有Nginx代理?

如果是这样,这是我过去成功使用的一个不错的示例配置:

server {
        listen       80;
        server_name  <YOUR_HOSTNAME>;
        location / {
            proxy_pass         http://127.0.0.1:5010/;
            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;

            client_max_body_size       10m;
            client_body_buffer_size    128k;

            proxy_connect_timeout      90;
            proxy_send_timeout         90;
            proxy_read_timeout         90;

            proxy_buffer_size          4k;
            proxy_buffers              4 32k;
            proxy_busy_buffers_size    64k;
            proxy_temp_file_write_size 64k;
        }
}

我相信这应该可以完成您想要的。祝好运!


这不适用于macOS brew nginx。您必须在服务器周围添加一个http {}块,否则:nginx:[emerg]“服务器”指令在此处不允许
muenalan

13

非常简单-我将代理设置保留为默认设置,尽管您可能想查看它以适应您的需求。

# NGINX configuration

# System configuration ##################
worker_processes  3;
events {
    worker_connections  1024;
}
user nobody;

# Web configuration #####################
http {
    server {
        listen 80 default;
        location / {
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
            proxy_set_header   Host             $host;

            proxy_pass http://127.0.0.1:5010/;

        }
    }
}

2
泰勒-您的最低要求是好的。那就是我想要的。如果我可以但仍然对serverfault还是陌生的,将给您一些意见
Ted Karmel 2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.