Nginx怎么配置反向代理
Posted 技术源泉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx怎么配置反向代理相关的知识,希望对你有一定的参考价值。
有时候,为了保护我们的服务器或者想做负载均衡等原因,我们需要反向代理来实现这个功能,今天我就来简单讲下怎么配置反向代理
方法/步骤
假设我们有个tomcat服务,端口为8080。
这里以centos7为例,找到我们的nginx配置文件。
一般默认位置在/etc/nginx文件夹中。
查看我们的nginx主配置文件。
cat /etc/nginx/nginx.conf
我们可以看到配置文件中含有这一行
include /etc/nginx/conf.d/*.conf;
它代表nginx启动时会加载conf.d/下的所有.conf的配置文件。
我们切换到conf.d目录下
cd conf.d
创建文件tomcat.conf
vi tomcat.conf
添加如下配置:
upstream site {
server 127.0.0.1:8080;
}
server {
listen 80;
# server_name 这里填写你的域名
server_name example.com;
# 匹配静态文件,进行缓存
location ^~ static/ {
expires 30d;
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服务了。
以上是关于Nginx怎么配置反向代理的主要内容,如果未能解决你的问题,请参考以下文章