Iis-8

使用 DropZone 將 XLSX 文件發佈到 IIS 站點

  • September 11, 2015

我正在嘗試使用 DropZone (www.dropzonejs.com/) 發布一個​​ xlsx 文件以在客戶端讀取。這適用於我使用 ember 伺服器的測試環境。但是,一旦我將它帶到 IIS8,我就會收到 405 Method Not Allowed 錯誤。DropZone 使用該文件發出 POST 請求。我嘗試將 POST 動詞添加到靜態文件處理程序映射,但它似乎沒有影響它。我想知道這是否可能與 Origin 沒有斜杠有關,而 Referer 有。

IIS 中站點的靜態文件處理程序映射具有 * 路徑,動詞設置為“所有動詞”,訪問權限為“讀取”,映射為“文件或文件夾”

這是我使用 Chrome 開發者工具可以看到的:

POST http://<my site URL>/# 405 Method Not Allowed 28ms

一般的

Remote Address:<my server ip>:80
Request URL:http://<my site url>/
Request Method:POST
Status Code:405 Method Not Allowed

共鳴頭

Access-Control-Allow-Headers:Accept, Content-Type, Origin
Access-Control-Allow-Methods:GET, PUT, POST, DELETE, OPTIONS
Access-Control-Allow-Origin:*
Allow:GET, HEAD, OPTIONS, TRACE
Cache-Control:private
Content-Length:5291
Content-Type:text/html; charset=utf-8
Date:Thu, 10 Sep 2015 23:20:03 GMT
Server:Microsoft-IIS/8.0
X-Powered-By:ASP.NET

請求標頭

Accept:application/json
Accept-Encoding:gzip, deflate
Accept-Language:en-GB,en-US;q=0.8,en;q=0.6
Cache-Control:no-cache
Connection:keep-alive
Content-Length:252016
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryJMRgHAltxqUm8aBL
Host:labeleditorclient
Origin:http://<my site URL>
Referer:http://<my site URL>/
User-Agent:Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.85 Safari/537.36
X-Requested-With:XMLHttpRequest

請求有效載荷

------WebKitFormBoundaryJMRgHAltxqUm8aBL
Content-Disposition: form-data; name="file"; filename="1.xlsx"
Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet


------WebKitFormBoundaryJMRgHAltxqUm8aBL--

我發現了問題所在。預設頁面是 index.html。沒有處理 POST 的 html 處理程序。

所以我按照這裡的說明為html添加了一個處理程序http://sysadmin.circularvale.com/server-config/enabling-post-requests-to-static-eg-html-pages-using-iis-7/

在那之後,它奏效了。

引用自:https://serverfault.com/questions/721624