Trang 1 / 2 12 LastLast
Hiển thị kết quả từ 1 đến 10 / 15
  1. #1
    Tham gia
    08-03-2006
    Bài viết
    39
    Like
    0
    Thanked 0 Times in 0 Posts

    Control FileUpload trong ASP.NET (2.0) cho phép upload file dung lượng tối đa là bao nhiêu?

    Mình dùng control FileUpload cho phép admin up file lên host, những file nhỏ (khoảng < 8Mb) thì OK, nhưng lớn hơn thì không được. Một điều khó hiểu nữa là nếu như mình dùng 1 control thì nó có thể up file < 8Mb, nhưng dùng 2 cái thì tổng dung lượng của 2 file cũng phải < 8Mb (file này lớn thì file kia phải nhỏ, miễn sao < 8Mb), nếu lớn hơn cũng không được.

    Mong các bạn giúp đỡ!
    Quote Quote

  2. #2
    Tham gia
    04-12-2002
    Location
    Hà Nội
    Bài viết
    3
    Like
    0
    Thanked 0 Times in 0 Posts
    Tìm trong web.config chỗ có node <httpRuntime>, set maxRequestLength lên tương ứng số KB cần upload (đơn vị là KB). Set cả cho executionTimeout (đơn vị là số giây) tương ứng nữa.

  3. #3
    Tham gia
    15-01-2008
    Bài viết
    166
    Like
    0
    Thanked 2 Times in 2 Posts
    Quote Được gửi bởi hacgato View Post
    Tìm trong web.config chỗ có node <httpRuntime>, set maxRequestLength lên tương ứng số KB cần upload (đơn vị là KB). Set cả cho executionTimeout (đơn vị là số giây) tương ứng nữa.
    Không phải webconfig mà là machine.config nằm ở thư mục

    \System Root\Microsoft.NET\Framework\Version Number\Config folder

  4. #4
    Tham gia
    12-12-2003
    Bài viết
    20
    Like
    0
    Thanked 0 Times in 0 Posts
    nó nằm trong file web.config bạn ạ
    ví dụ:

    <httpRuntime maxRequestLength="16096" /> -> file upload tối đa là 16MB

  5. #5
    Tham gia
    08-03-2006
    Bài viết
    39
    Like
    0
    Thanked 0 Times in 0 Posts
    Mình thấy rồi. Cám ơn các bạn nhiều!

  6. #6
    Tham gia
    10-09-2007
    Bài viết
    2
    Like
    0
    Thanked 0 Times in 0 Posts

    Tệ thật ! Tớ chưa tìm thấy <httpRuntime>, set maxRequestLength ở chõ nào ?

    Quote Được gửi bởi hnminh View Post
    Mình thấy rồi. Cám ơn các bạn nhiều!
    Sao tớ không thấy nhỉ bạn có thể chỉ dõ cho tớ không
    hay bạn biết gủi vào mail cho tớ nhé ! Thanhlongbg@gmail.com
    cảm ơn trước nhé !

  7. #7
    Tham gia
    20-02-2009
    Location
    Ninh Bình
    Bài viết
    567
    Like
    0
    Thanked 34 Times in 31 Posts

    Cần chú ý !

    Dưới đây là chú thích của FileUpload control trên mạng của MSDN.

    One way to guard against denial of service attacks is to limit the size of the files that can be uploaded by using the FileUpload control. You should set a size limit that is appropriate for the types of files that you expect to be uploaded. The default size limit is 4096 kilobytes (KB), or 4 megabytes (MB). You can allow larger files to be uploaded by setting the maxRequestLength attribute of the httpRuntime element. To increase the maximum allowable file size for the entire application, set the maxRequestLength attribute in the Web.config file. To increase the maximum allowable file size for a specified page, set the maxRequestLength attribute inside the location element in Web.config. For an example, see location Element (ASP.NET Settings Schema).

    When uploading large files, a user might also receive the following error message:

    aspnet_wp.exe (PID: 1520) was recycled because memory consumption exceeded 460 MB (60 percent of available RAM).


    Theo như trên, bạn phải thay đổi mức tối đa qua maxRequestLength. Nhưng tôi xin có một điều khuyến cáo: Hai điều quan trọng nhất của chuyển giao tư liệu qua hệ thống mạng/kết nối là 1) an-toàn 2) khắc phục và hồi phục khi bị lỗi.

    Bạn có thể đễ dàng cho lập trình của bạn upload 100MB tư liệu. Nhưng chuyện gì sẽ xảy ra nếu người xử dụng đã tốn hết 2 tiếng đồng hồ, upload được 70% của 100MB file, sau đó bị rớt mạng? Họ phải trở lại để upload từ đầu chăng? Chuyện gì sẽ xảy ra nếu một tay hacker nào đó tiếp tục upload 100MB từ 100 pages khác nhau, chỉ với mục đích là quấy rối cho máy chủ tiếp tục hoạt động không ngừng? Đây chính là lý do tại sao Microft cho FileUpload mức tối đa là 4MB.

    Thành thử ra, tăng mức tối đa từ 4MB lên 10MB, hoặc 100MB tuyệt đối, tuyệt đối, và tuyệt đối không phải là một phương án xử lý hữu hiệu.


    Quote Được gửi bởi hnminh View Post
    Mình dùng control FileUpload cho phép admin up file lên host, những file nhỏ (khoảng < 8Mb) thì OK, nhưng lớn hơn thì không được. Một điều khó hiểu nữa là nếu như mình dùng 1 control thì nó có thể up file < 8Mb, nhưng dùng 2 cái thì tổng dung lượng của 2 file cũng phải < 8Mb (file này lớn thì file kia phải nhỏ, miễn sao < 8Mb), nếu lớn hơn cũng không được.

    Mong các bạn giúp đỡ!

  8. #8
    Tham gia
    27-11-2008
    Bài viết
    35
    Like
    0
    Thanked 0 Times in 0 Posts
    Quote Được gửi bởi dq_ninh View Post
    Dưới đây là chú thích của FileUpload control trên mạng của MSDN.

    One way to guard against denial of service attacks is to limit the size of the files that can be uploaded by using the FileUpload control. You should set a size limit that is appropriate for the types of files that you expect to be uploaded. The default size limit is 4096 kilobytes (KB), or 4 megabytes (MB). You can allow larger files to be uploaded by setting the maxRequestLength attribute of the httpRuntime element. To increase the maximum allowable file size for the entire application, set the maxRequestLength attribute in the Web.config file. To increase the maximum allowable file size for a specified page, set the maxRequestLength attribute inside the location element in Web.config. For an example, see location Element (ASP.NET Settings Schema).

    When uploading large files, a user might also receive the following error message:

    aspnet_wp.exe (PID: 1520) was recycled because memory consumption exceeded 460 MB (60 percent of available RAM).


    Theo như trên, bạn phải thay đổi mức tối đa qua maxRequestLength. Nhưng tôi xin có một điều khuyến cáo: Hai điều quan trọng nhất của chuyển giao tư liệu qua hệ thống mạng/kết nối là 1) an-toàn 2) khắc phục và hồi phục khi bị lỗi.

    Bạn có thể đễ dàng cho lập trình của bạn upload 100MB tư liệu. Nhưng chuyện gì sẽ xảy ra nếu người xử dụng đã tốn hết 2 tiếng đồng hồ, upload được 70% của 100MB file, sau đó bị rớt mạng? Họ phải trở lại để upload từ đầu chăng? Chuyện gì sẽ xảy ra nếu một tay hacker nào đó tiếp tục upload 100MB từ 100 pages khác nhau, chỉ với mục đích là quấy rối cho máy chủ tiếp tục hoạt động không ngừng? Đây chính là lý do tại sao Microft cho FileUpload mức tối đa là 4MB.

    Thành thử ra, tăng mức tối đa từ 4MB lên 10MB, hoặc 100MB tuyệt đối, tuyệt đối, và tuyệt đối không phải là một phương án xử lý hữu hiệu.
    Nếu nói vậy làm sao megaupload, rapidshare, ... cho phép upload lên vài trăm MB files nhỉ? Sao kô ai hack nó ta? Với lại thiết kế hệ thống sao cho người ta không dùng chức năng file upload mà tấn công hệ thống chứ.

    Như các bạn khác đã thảo luận thì maxRequestLength sẽ giúp bạn cho phép upload file lớn.

  9. #9
    Tham gia
    20-02-2009
    Location
    Ninh Bình
    Bài viết
    567
    Like
    0
    Thanked 34 Times in 31 Posts

    Rất hay !

    "Nếu nói vậy làm sao megaupload, rapidshare, ... cho phép upload lên vài trăm MB files nhỉ? Sao kô ai hack nó ta? Với lại thiết kế hệ thống sao cho người ta không dùng chức năng file upload mà tấn công hệ thống chứ."

    Hàhàhàhà. Bởi thế người ta mới bỏ cả đống tiền ra mà mướn những lập-trình-gia (hoặc chuẩn-bị-lập-trình-gia) như chúng ta chứ.

    Bạn thử vận nội công cho máu lên óc xem thế nào. Phải, làm sao chúng ta có thể upload 5GB dvd file? Nếu là bạn, bạn sẽ giải quyết như thế nào?

    Cũng dễ thôi...Tưởng tưởng đi!

    Bạn có thể viết một hàm để đọc file, rồi gửi đi từng mảng 1MB cho đến cuối không? Được chứ, nếu bạn có một...cookie nằm ở đầu bên kia. Và như thế, bạn còn có thể giải quyết được vấn đề bị rớt mạng. Tức là sau khi bị rớt mạng, đầu bên này có thể hỏi cái cookie ở đầu bên kia "ê, hồi nãy nhận được tới đâu rồi, bây giờ nhận tiếp nha."

    Tiến xa hơn nữa, nếu cái cookie của bạn có khả năng SSL, bạn có thể khóa mã (encryption) và không một hacker nào có thể thay đổi cái file của bạn gửi cả.

  10. #10
    Tham gia
    27-11-2008
    Bài viết
    35
    Like
    0
    Thanked 0 Times in 0 Posts
    Bạn trả lời mâu thuẫn nhỉ? Bên trên bạn nói kô làm được và khuyên người khác đừng làm vì hacker sẽ tấn công.
    Bạn có thể đễ dàng cho lập trình của bạn upload 100MB tư liệu. Nhưng chuyện gì sẽ xảy ra nếu người xử dụng đã tốn hết 2 tiếng đồng hồ, upload được 70% của 100MB file, sau đó bị rớt mạng? Họ phải trở lại để upload từ đầu chăng? Chuyện gì sẽ xảy ra nếu một tay hacker nào đó tiếp tục upload 100MB từ 100 pages khác nhau, chỉ với mục đích là quấy rối cho máy chủ tiếp tục hoạt động không ngừng? Đây chính là lý do tại sao Microft cho FileUpload mức tối đa là 4MB.

    Thành thử ra, tăng mức tối đa từ 4MB lên 10MB, hoặc 100MB tuyệt đối, tuyệt đối, và tuyệt đối không phải là một phương án xử lý hữu hiệu.
    Bên dưới bạn trả lời các lập trình gia như bạn sẽ làm được bằng cách chia file này nọ ra.
    Quote Được gửi bởi dq_ninh View Post
    "Nếu nói vậy làm sao megaupload, rapidshare, ... cho phép upload lên vài trăm MB files nhỉ? Sao kô ai hack nó ta? Với lại thiết kế hệ thống sao cho người ta không dùng chức năng file upload mà tấn công hệ thống chứ."

    Hàhàhàhà. Bởi thế người ta mới bỏ cả đống tiền ra mà mướn những lập-trình-gia (hoặc chuẩn-bị-lập-trình-gia) như chúng ta chứ.

    Bạn thử vận nội công cho máu lên óc xem thế nào. Phải, làm sao chúng ta có thể upload 5GB dvd file? Nếu là bạn, bạn sẽ giải quyết như thế nào?

    Cũng dễ thôi...Tưởng tưởng đi!

    Bạn có thể viết một hàm để đọc file, rồi gửi đi từng mảng 1MB cho đến cuối không? Được chứ, nếu bạn có một...cookie nằm ở đầu bên kia. Và như thế, bạn còn có thể giải quyết được vấn đề bị rớt mạng. Tức là sau khi bị rớt mạng, đầu bên này có thể hỏi cái cookie ở đầu bên kia "ê, hồi nãy nhận được tới đâu rồi, bây giờ nhận tiếp nha."

    Tiến xa hơn nữa, nếu cái cookie của bạn có khả năng SSL, bạn có thể khóa mã (encryption) và không một hacker nào có thể thay đổi cái file của bạn gửi cả.
    Quan trọng người ta hỏi câu hỏi bạn kô trả lời. Chứ tui tưởng tượng kém lắm nên kô cần vận nội công làm gì tốn năng lượng. Tui cứ google thôi.

Trang 1 / 2 12 LastLast

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •