nginx怎么配置tomcat反向代理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx怎么配置tomcat反向代理相关的知识,希望对你有一定的参考价值。
参考技术A 1. 前期准备nginx 安装成功
tomcat 安装成功
2. 更改nginx的配置文件
更改nginx.conf文件,在http/server/location层次结构下,添加proxy_pass http://localhost:7080; 一句话即可。注意不要放了;结尾。
3. 重启nginx,在浏览器中输入nginx的访问地址,显示的就是Tomcat的访问地址。
4. 现在虽然nginx反向代理成功了,但是为了更好的发挥nginx的性能。我们将Tomcat的js、html、图片等静态文件配置到nginx上进行缓存,这样就可以提高应用的访问效率了。
5. 删除 location / 节点,避免全部请求被拦截。新增 location ~ \.jsp$ 节点和 location ~ \.(html|js|css|png|gif|jpg)$ 节点,如下图。
6. 访问http://10.0.6.108:7788,返回nginx 404。这是因为匹配的location,应用自动跳转到nginx的404.
访问http://10.0.6.108:7788/index.jsp,返回到tomcat页面。因为jsp会自动匹配配置的location。
访问http://10.0.6.108:7788/tomcat.png,也能正确显示tomcat的logo。说明nginx配置的静态文件location是生效的。
至此,Nginx配置反向代理Tomcat完成。
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怎么配置tomcat反向代理的主要内容,如果未能解决你的问题,请参考以下文章