`
yhq1212
  • 浏览: 82439 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

nginx TOMCAT 文件下载 上传 进度条 缓存

 
阅读更多

 

上传部分

如果在应用服务器里面写了进度条的程序,通过NGINX转发你就坑了,NGINX会把整个附件数据先本地缓存,缓存完毕后转发给你的应用服务器,在这个过程之间,恭喜,你的进度条永远就是0了,待转发后,你的进度条可能瞬间就可以到达一百。好吧,恭喜了,转发了一次。

解决这个问题的方法是配置proxy_request_buffering off ;具体功能见官网说明。

最后讲一句,放在HTTP里面。

 

 

下载部分

 

 

NGinx配置

server {  

charset GBK;

listen       8083;        #端口  

server_name  localhost;   #服务名  

 

   location / {

              proxy_pass   http://127.0.0.1:8001/;#转到的TOMCAT

           }

  location ~ ^/testfile/(.*)\.txt$ {

 

#set $obj_file "$1.txt";

#if (!-f /t1/$obj_file){

# rewrite ^ /t1/ last;

#}

internal; #禁止访问

error_page 404 =200 @backend; #跳转到配置文件

  }

  location @backend {#配置

     rewrite  ^/testfile/(.*)$ /Samples/testfile.jsp?path=$1 break;  #$后面为TOMCAT验证路径

 proxy_pass   http://127.0.0.1:8001;

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;  

break;  

 

  }

 

}  

 

 

 

 

 

 

JSP部分,

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

 //自己获取传过来的参数,进行解析验证是否合法。,合法后把/t1/1.txt的地址换位文件实际地址,切记带/

  response.setHeader("Content-Disposition","attachment;"); 

  response.setHeader("Content-Type","application/octet-stream"); 

  response.setHeader("X-Accel-Redirect","/t1/1.txt"); 

 

 

%>

 

 

 参考资料

http://toptree.iteye.com/blog/1275200

http://www.oschina.net/question/54100_33185

以下为正则

http://blog.csdn.net/a519640026/article/details/9138487

nginx配置

 http://segmentfault.com/a/1190000000437323

 

nginx优化

http://www.z-dig.com/nginx-optimization-25.html#_Toc422324204

分享到:
评论

相关推荐

    Nginx和tomcat上传文件大小修改.txt

    Nginx和tomcat上传文件大小限制修改,Ngnix和tomcat默认对上传文件大小有限制。

    nginx静态文件缓存的解决方案1

    【Nginx 静态文件缓存解决方案】 Nginx 是一款高性能的 HTTP 和反向代理服务器,常用于处理静态资源,以减轻后端服务器的压力。为了进一步提高静态资源的访问效率,我们可以利用 Nginx 的缓存功能。下面详细介绍...

    nginx搭建文件服务器上传文件获取文件

    ### Nginx 搭建文件服务器:上传与获取文件 在互联网技术中,Nginx 被广泛用于构建高性能、稳定的Web服务器环境。本文将详细介绍如何利用 OpenResty + Nginx + Lua 实现一个文件服务器,该服务器支持文件上传与获取...

    基于ssm+shiro+redis+nginx tomcat服务器集群管理项目.zip

    基于ssm+shiro+redis+nginx tomcat服务器集群管理项目 基于ssm+shiro+redis+nginx tomcat服务器集群管理项目 基于ssm+shiro+redis+nginx tomcat服务器集群管理项目 基于ssm+shiro+redis+nginx tomcat服务器集群管理...

    Nginx+tomcat

    ### Nginx+Tomcat 实现高性能负载均衡的详细解析 #### 一、概述 在现代互联网架构中,为了提高网站或应用的可用性和性能,通常会采用负载均衡技术来分发请求到多个服务器上执行。其中,Nginx 和 Tomcat 组合是一种...

    linux下Nginx+tomcat整合的安装与配置

    ### Linux下Nginx+Tomcat整合的安装与配置详解 在现代的Web服务器架构中,Nginx作为高性能的反向代理服务器和负载均衡器,常被用来与Tomcat等应用服务器配合使用,以提高网站的响应速度、稳定性和安全性。本文将...

    nginx tomcat memcached 集群 session共享

    Nginx作为反向代理服务器,负责负载均衡,Tomcat作为应用服务器运行Java Web应用程序,而Memcached则作为分布式内存缓存系统,用于存储和共享session数据。 1. **Nginx**:Nginx是一个高性能的HTTP和反向代理服务器...

    nginx上传文件大小报错500的解决办法

    nginx上传文件大小报错500的解决办法 采用nginx作反向代理,出现了一个诡异的问题,小文件可以提交,大文件会报500内部错误。这个是什么原因导致的呢?  查wiki可知,上传文件大小相关的有三个配置 client_body_...

    nginx文件资源下载

    # 设置最大允许下载文件大小,可根据需要调整 try_files $uri $uri/ =404; # 如果文件不存在,返回404 } } ``` 然后,将配置链接到 `sites-enabled` 目录,并重启 Nginx 服务: ```bash # 链接配置文件 sudo ln...

    Nginx+tomcat+redis

    Nginx的负载均衡和静态资源处理、Tomcat的动态内容渲染以及Redis的缓存功能,共同优化了系统的整体性能,使得服务能够应对大规模并发请求,同时保证了良好的用户体验。在实际部署中,还需要考虑监控、日志、安全等...

    Nginx+Tomcat 负载均衡 3分钟搞定

    1. 下载和安装 Nginx 和 Tomcat 服务器。 2. 配置 Tomcat 服务器的启动端口。 3. 配置 Nginx 服务器的 upstream 模块。 4. 配置 Nginx 服务器的 proxy_pass 模块。 5. 启动 Nginx 服务器。 6. 访问 localhost/index....

    windows下配置nginx反向代理tomcat

    - 解压缩下载的文件到指定目录,例如 `C:\nginx`。 2. **目录结构**: - 解压后,你会看到类似于以下的目录结构: ``` C:\nginx |- conf | |- nginx.conf (主配置文件) | |- mime.types (MIME 类型配置文件)...

    nginx+tomcat+memcache集群缓存配置及介质

    主要配置nginx conf文件 增加以下内容 upstream mytomcats { server localhost:8080; server localhost:8081; } "&gt;一 安装 1 jdk安装及tomcat7解压缩安装配置 不用说明 2 下载nginx1 4 2 for win32 解压安装 ...

    php文件上传进度条集合

    8. **Nginx或Apache模块**:某些服务器软件提供扩展模块,如Nginx的`HttpUploadProgressModule`,可以提供文件上传进度信息,但需要服务器配置支持。 9. **PHP的cURL库**:在cURL中,`curl_multi_info_read`函数...

    Nginx和Tomcat集群环境部署

    ##### 3.1 Tomcat下载 1. 访问[Tomcat官方网站](https://tomcat.apache.org/)。 2. 在左侧的Download栏下选择Tomcat 7.x版本。 3. 下载页面中选择.zip格式文件,直接点击下载链接即可开始下载。 ##### 3.2 Nginx...

    Nginx+tomcat配置集群负载均衡实例

    在IT行业中,构建高效、可扩展的Web服务是至关重要的,而"Nginx+Tomcat"的组合常被用于实现这一目标。本实例将详细阐述如何通过Nginx配置集群负载均衡,以实现动静分离,提升系统性能和稳定性。 首先,Nginx是一款...

Global site tag (gtag.js) - Google Analytics