2010年2月5日 星期五

[Asp].IIS7 上傳檔案大小限制

上傳檔案時遇到 執行錯誤: 'ASP 0101 : 80004005'
原因: 上傳的內容大小超過限制,預設是200K.


Windows 2003 (IIS 6.0) 解決辦法:
1.停止 IIS 服務,
2. 打開 C:\Windows\System32\Inetsrv 中的 metabase.XML, 並修改 AspMaxRequestEntityAllowed 為你需要的值(例如 1073741824, 1GB)。
如果還是不行的話, 修改看看 AspBufferingLimit 裡的值.
3. 啟動IIS服務。


Windows 2008 (IIS 7.0) 解決辦法:
1. 在iis 裡點選要修改的站台.




2. 修改 [Asp] -> [限制內容] -> [要求實體的上限], 改好後並按下 "套用".

附註:其實 200k 就夠用了說, 如果是分次從 user 的 client 端瀏覽器一次讀取200k 的做的話, 例如程式碼:

        dim myTotalBytes
        dim myReadBuffer
        dim myReadLimit
        myReadBuffer = 200000     '// 200KB
        myTotalBytes = Request.TotalBytes
        if myTotalBytes > 0 then
            do
                if myTotalBytes <= myReadBuffer then
                    '// read one time.
                    BinaryStream.write Request.BinaryRead(myTotalBytes)
                    myTotalBytes = 0
                else
                    '// read many time.
                    BinaryStream.write Request.BinaryRead(myReadBuffer)
                    myTotalBytes = myTotalBytes - myReadBuffer
                end if
                if myTotalBytes < 1 then
                    exit do
                end if
            loop
        end if



沒有留言:

張貼留言

Facebook 留言板