nginx于tomcat项目整合(拆分静态文件)
1.在很多时候我们在网站上应用的时候都会用到nginx,由于我们是java开发者,不可避免的是我们需要在我们的tomcat的工程中应用到nginx,这里的应用可以是请求转发,负载均衡,反向代理,配置虚拟站点等。
2.当然很多时候我们需要tomcat和nginx更加有深度的整合,比如所有的请求都由nginx进行接受,如果是jsp文件,nginx就会转发到tomcat服务器,如果是静态文件,就直接由nginx进行处理。
3.现在我们来进行nginx和tomcat的整合
步骤1:创建proxy.conf
proxy_redirect off;
proxy_set_header Host $host;
#获取真实IP
proxy_set_header X-Real-IP $remote_addr;
#获取代理者的真实ip
#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;
步骤2:在http作用域中引入proxy文件
#引入代理文件
include D:\proxy.conf;
步骤3:配置需要nginx进行处理的静态文件
location ~ \.(html|js|css|png|gif)$ {
root D:\auth;
expires 24h;
}
步骤4:配置需要转发给tomcat处理的一些Servlet请求
location / {
proxy_pass http://localhost:8081;
}
最后:我们可以在nginx上开启gzip压缩,使nginx的传输静态文件在速度更快。
gzip on;
gzip_comp_level 5;
gzip_min_length 1024;
gzip_types text/plain application/x-javascript text/css application/xml text/javascript image/jpeg image/gif image/png;
当然我们也可以使静态文件在客户端缓存,这样客户的第二次请求就可以直接从本地获取缓存的文件啦。
expires 24h;
杂家不如专家,精益求精
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步