1. 程式人生 > >批量上傳檔案時,關於post請求報錯NET:ERR_CONNECTION_RESET

批量上傳檔案時,關於post請求報錯NET:ERR_CONNECTION_RESET

前言

    新手做前端大專案,遇到坑真是接踵而來。這次遇到的是使用formData傳檔案的時候,如果上傳檔案數太多,總是報NET:ERR_CONNECTION_RESET的錯,百度好久也不知道什麼原因,後來自己慢慢摸索,可能原因有二。

一、檢視一下tomcat配置檔案server.xml是否設定了上傳檔案總大小的限制

    注意下面的maxPostSize,它就是設定限制上傳檔案的大小的屬性,單位是B

<Connector port="8080" protocol="HTTP/1.1"  
                maxHttpHeaderSize="8192"   
                useBodyEncodingForURI="true"  
                maxPostSize="20971520"  
                maxThreads="2048"  
                redirectPort="8443"  
                enableLookups="false"  
                compression="on"  
                compressionMinSize="2048"  
                                 compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"  
                connectionTimeout="20000"  
                disableUploadTimeout="true"  
                URIEncoding="UTF-8"/>  

    至於怎麼詳細設定,由於不關前端的事情,所以我只能大概給出出問題的原因是在這裡。

二、檢視nginx伺服器是否沒有設定上傳檔案總大小

   一般我們現在做專案都用前後端分離,然後用nginx作為反向代理解決跨域問題。但是nginx一些配置錯誤有時候會導致一些bug出現。比如檔案上傳。如果發現後臺配置上傳檔案的總大小是沒問題的話,那麼問題就有可能出現在nginx的配置中了。

    我們來看看nginx的文件,這是我看的某個中文文件,具體什麼版本不詳,文件地址是nginx中文API文件

    其中,我們找到http core模組http core模組API,然後瀏覽器全域性搜尋一下client_max_body_size,我們會發現,nginx幫我們預設設定了這個限制上傳檔案總大小的值為1M,如下圖:

    找到了如何修改上傳檔案大小後,那就去搞事情。我們去到nginx的配置檔案中,如下圖路徑:


    然後找到nginx.conf這個檔案,用記事本或者sublime text3開啟(只要能開啟不亂碼就行),修改後臺給你的API介面的配置

如下圖:

server {
        listen       8054;
        server_name  localhost;
        location /upload {
            proxy_pass   http://127.0.0.1:8001/ct-upload-service;
            #set size of upload files    
            client_max_body_size 100m;
        }
}

    proxy_pass設定的是後臺給我的批量上傳檔案的API介面,然後client_max_body_size設定的是允許上傳的所有檔案的總大小,單位是m,我一般用小寫,沒細究過大寫行不行,因為nginx文件也是用小寫的,然後記得重新啟動nginx伺服器!

三、總結

    這個就沒什麼需要總結的,經過配置nginx.conf後,我的批量上傳就沒問題了。做前後端分離,用到nginx,自己對nginx配置不熟,有時間學習前端之外,還要把nginx學完才行,各位加油!

相關推薦

批量檔案關於post請求NET:ERR_CONNECTION_RESET

前言    新手做前端大專案,遇到坑真是接踵而來。這次遇到的是使用formData傳檔案的時候,如果上傳檔案數太多,總是報NET:ERR_CONNECTION_RESET的錯,百度好久也不知道什麼原因,後來自己慢慢摸索,可能原因有二。一、檢視一下tomcat配置檔案serve

http使用post檔案請求頭和主體資訊總結

HEADER:  寫道 ...... Content-Type: multipart/form-data; BODY: Content-type: multipart/form-data, boundary=AaB03x --AaB03x content-d

C# webconfig配置 檔案System.Web.HttpException: 超過了最大請求長度

問題:System.Web.HttpException: 超過了最大請求長度 原因:上傳檔案的時候,檔案的大小超過了asp.net預設的大小,需要進行修改 解決:在webconfig中進行配置 <system.web> <h

關於 xftp 檔案只是了0位元組的問題

有兩次,上傳的時候出現了問題,能上傳,但是上傳過去的檔案都是0位元組;查看了各種配置,都是正常的;百思不得解; 後來想起最近在linux伺服器執行apt-get update時,中間曾失敗過,於是重新執行一次,然後再次上傳,發現居然成功了;哈哈 

解決了uploadify檔案某些瀏覽器(版本)中session丟失導致失敗的問題

一、問題近期,在做檔案上傳時,使用了uploadify這個基於flash的檔案上傳元件,版本號為3.2.1。在IE下,一切正常,但是當切換到某些低版本chrome瀏覽器後,發生了檔案不能上傳的問題。通過除錯和問題定位,發現是session丟失,導致服務端不能識別登入狀態,所以

nodejs 處理表單檔案獲取不到表單資料

from表單上傳檔案時,為保證檔案正確的編碼格式,我們會為form設定 enctype="multipart/form-data" 屬性,但此時我們又不能獲取到input傳遞的值。 表單中enctyp

使用laravel框架開發介面ajax post請求419

自己在本機搭建了一個nginx伺服器,使用laravel框架開發後臺介面。get請求正常,但是post請求一直報錯。H5和APP都不成功,code=419。解決辦法:找到 VerifyCsrfToken.php檔案(app/http/middleware)新增如下方法publ

檔案下載在form表單中設定屬性enctype=“multipart/form-data”的情況下如何獲取表單提交的值?

一、問題描述 檔案上傳下載時,在form表單中設定屬性enctype=“multipart/form-data”的情況下,如何獲取表單提交的有關使用者資訊的值?(比如:textfield、radio等屬性中的值) 二、解決方法 1、情況一:沒有對user物件進行封裝 方法:

SpringCloud專案檔案中文檔名亂碼檔案下載

一、檔案上傳亂碼 SpringCloud,路由zuul。 今天在做一個上傳檔案的功能,檔案傳到後臺getOriginalFilename()時檔名中文亂碼。 嘗試了以下2種辦法都不行: 對檔名重新編碼:fileName = new String(fil

form表單提交批量檔案不重新整理不跳轉頁面

jsp: <form action="inImg.do" method="post" enctype="multipart/form-data" target="nm_iframe"> <table> <tr>

不帶外掛 自己寫js實現批量檔案及進度顯示

今天接受專案中要完成檔案批量上傳檔案而且還要顯示上傳進度,一開始覺得這個應該不是很麻煩,當我在做的時候遇到了很多問題,很頭疼啊。 不過看了別人寫的程式碼,自己也測試過,發現網上好多都存在一些問題,並不是自己想要的。然後自己查閱各種資料,經過自己總結,最終完成了這個功能。

SpringMVC配置簡單例項檔案與下載ajax請求

本文基於SpringMVC採用註解方式,從配置到簡單常用的功能舉例詳解,功能已經在本機測試過,能跑起來。 參考資料:iteye部落格;                   Spring文件; 1、匯入相關jar包:                              

java 單個檔案, 批量檔案,單個下載,批量打成zip壓縮包下載檔案(如果不能接受httpsevletrequest請求檔案可以使用MultipartFile[] files)

package net.wkang.intelligent_audit.hospitalization.utils; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; impor

log沒有打出 rz -bye提示core dump, scp檔案失敗 今天是怎麼了!!!------都是磁碟滿了惹的火

       開發除錯的時候, 經常會遇到一些異常, 有的很棘手。 但如果每次嘗試去解決問題, 積累多了, 總結多了, 自然就有能快速知道原因了, 這就是所謂的經驗吧。        今天,        該打的log沒有打出, log戛然而已, 我開始以為core dum

【全網首創】修改 Ext.ux.UploadDialog.Dialog 原始碼支援多選新增檔案批量檔案

  公司老框架的一個頁面需要用到檔案上傳,本以為修改一個配置引數即可解決,百度一番發現都在說這個第三方外掛不支援檔案多選功能,還有各種各樣缺點,暫且不討論這些吧。先完成領導安排下來的任務。   任務一:支援多選新增檔案   任務二:支援批量新增檔案   我們先來說第二個任務吧,第二個任務相比較容易些,經過半天

Ueditor在圖片服務器返回502 bad gateway的填坑記

ueditor 502 iconv故事發生在2017.10.26下午,環宇同學跟我反應說在測試青羊雙創項目的後臺管理,發現在編輯園區信息時,想要上傳一堆圖片,用編輯器嘗試上傳圖片時,卻報了“上傳失敗,請重試”的錯,類似下圖:納尼?我...... 多麽正常的編輯器,我本地跑的好好的,我趕緊去試了一下,果然報錯,

robot framework 遇到頁面彈出框檔案處理

最近在做公司公司頁面自動化的時候遇到上傳檔案的彈出框,如下圖,在點選選擇檔案的時候回彈出一個檔案選擇視窗,記錄下處理方法 下載安裝AutoIt 軟體,安裝python 安裝AutoItLibrary,這個過程網上一大堆,不做敘述 將AutoItLibrary匯入到robotframew

Spring Boot檔案出錯Required request part fileis not present

先上程式碼: @RestController @RequestMapping("/file") //@PreAuthorize(“hasAuthority(ROLE_USER)”) public class FileController { /** * 提取檔案上傳的公用程式碼

非同步檔案獲取進度資訊

轉自:https://javaweb.io/post/63 XMLHttpRequest例項的upload屬性可以新增一個事件progress,通過該事件回撥可以獲取到上傳進度資訊 原生上傳 //獲取檔案筐的檔案集合 let files = document.getElem

ajax+php檔案原始碼可正常執行

完整的jquery Ajax+php上傳檔案原始碼,可直接放到網站目錄下執行 index.html <html> <head> <title>TEST</title> <meta charset="UTF-8"&g