2012-08-08 39 views
5

Ứng dụng web của tôi cho phép người dùng được ủy quyền tải video lên bằng cách sử dụng điều khiển web ASP.NET WebForms FileUpload, trước đây đã có khoảng 100-200MB. Tôi phải thực hiện một số thay đổi đối với web.config để các tệp có kích thước này có thể được tải lên.Tải lên tệp 500MB + qua ứng dụng web ASP.NET

Tuy nhiên, người dùng có thẩm quyền bây giờ muốn upload các file video đó là 500MB +

Các maxAllowedContentLength hiện đã được thiết lập để 629145600 (600MB).

Tuy nhiên, khi tải lên các đoạn video, sau một thời gian trang đáp ứng với:

Trang không tìm thấy

này chỉ xảy ra với video lớn, vì vậy tôi biết vấn đề này có một cái gì đó để làm với kích thước tệp.

Tại sao điều này lại xảy ra? Và ngoài ra, tôi có nên tăng giới hạn lên 500MB + không? Có cách nào tốt hơn để nhận các tệp lớn như vậy lên máy chủ web không?

+0

Bạn có đang sử dụng điều khiển tải lên asp tiêu chuẩn không? Dự đoán đầu tiên của tôi là kích thước bài đăng của bạn lớn bất kể giới hạn của bạn và sẽ đẩy toàn bộ tệp vào bộ nhớ tại một thời điểm nào đó. Xem http://stackoverflow.com/questions/1599409/upload-large-files1gb-asp-net hoặc http://stackoverflow.com/questions/285120/upload-large-files-in-net?rq=1 đối với một số đề xuất. – dash

+0

@dash Cảm ơn bạn đã trả lời. Đúng vậy, tôi đang sử dụng ASP.WebForms với điều khiển web 'FileUpload'. – Curt

+0

Xin chào, chúng tôi đã trả lời câu hỏi của bạn chưa? –

Trả lời

3

Kiểm tra bài viết trên blog này bởi Jon Galloway, nó hơi cũ nhưng vẫn có liên quan:
Large file uploads in ASP.NET

của nó có câu trả lời cho câu hỏi của bạn về:

  • trang không tìm thấy
  • thiết lập chính xác maxAllowedContentLength

Có đề xuất cho các điều khiển khác nhau mà bạn có thể e, cả miễn phí và thương mại.
Tôi đã sử dụng điều khiển flash và nó hoạt động rất tốt.

Giải pháp thay thế
Cung cấp khu vực FTP cho mỗi người dùng để tải lên.
Nó cho phép người sử dụng:

  • dễ dàng tải lên hàng loạt nhiều file (khó khăn hơn trong trình duyệt)
  • lợi dụng sơ yếu lý lịch về ngắt kết nối

Sau đó bạn cung cấp một giao diện đồ họa cho người dùng, để tiêu thụ các tập tin.

+1

Xin chào, có bạn đã cảm ơn, liên kết của bạn rất hữu ích. Tôi đã thay đổi điều khiển web 'FileUpload' để sử dụng ứng dụng flash của bên thứ ba hiện đang xử lý các video tải lên và sự cố dường như đã được giải quyết – Curt

1

Bạn đã cân nhắc sử dụng Tải lên tệp jQuery https://github.com/blueimp/jQuery-File-Upload/ có sẵn các phiên bản cho .net và mvc không (xem git hub wiki). Phải mất tất cả trái tim đau khổ của việc thực hiện tải lên tập tin lớn trong. Net và cung cấp một giao diện đáng yêu quá. Kể từ khi phát hiện ra điều này một thời gian trước, tôi không bao giờ sử dụng bất cứ điều gì khác! Tôi đã thực hiện thành công một vài lần ngay bây giờ và nhìn thấy video tải lên ~ 2GB hoạt động thành công.

Các vấn đề liên quan