Nginx怎么配置反向代理

2025-10-27 16:01:15

1、假设我们有个tomcat服务,端口为8080。

这里以centos7为例,找到我们的nginx配置文件。

一般默认位置在/etc/nginx文件夹中。

2、查看我们的nginx主配置文件。

cat /etc/nginx/nginx.conf

我们可以看到配置文件中含有这一行

 include /etc/nginx/conf.d/*.conf;

它代表nginx启动时会加载conf.d/下的所有.conf的配置文件。

3、我们切换到conf.d目录下

cd conf.d

创建文件tomcat.conf

vi tomcat.conf

添加如下配置:

upstream site {

        # 这里为127.0.0.1,如果你的tomcat server不是本机,就写实际IP地址

        server 127.0.0.1:8080;

}

server {

listen 80;

# server_name 这里填写你的域名

server_name example.com;  

# 匹配静态文件,进行缓存

location ^~ static/ {

    expires      30d;

    # 填写你静态文件的实际地址,一般为tomcat ROOT目录下的某个文件夹

    root /tomcat_server/ROOT/static/;

}

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico|js|css|htm|zip|rar|tar|gz)$ {

      expires      30d;

root /tomcat_server/ROOT/;

    }

# 这里是关键的地方,这里匹配/ 进行反向代理。

location / {

             # 下面的参数可以获取客户真实IP

              proxy_http_version      1.1;

              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    50m;    

              client_body_buffer_size 128k;

              proxy_buffer_size       4k;    

              proxy_buffers           32 4k;

              proxy_busy_buffers_size 64k;  

              proxy_connect_timeout   30;    

              proxy_send_timeout      300;    

              proxy_read_timeout      300;

              # 这个参数就是反向代理指令

              proxy_pass http://site;

}

}

4、编辑完毕后,可以通过nginx -t测试配置文件是否正确。

不正确可以根据提示进行修改!

然后重启nginx,就可以使用nginx代理Tomcat服务了。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢