10/10/2018, 00:03
Về Upload file với PHP vẫn bí về cách ngăn tiêu tốn băng thông
Các bạn có cách nào lấy được kích thước file trước khi người dùng Upload? Forum mình mà đóng tính năng gửi file đính kèm thì kẹt cho người dùng, nhưng nếu mở tính năng này thì một số kẻ phá hoại và rảnh rỗi bắn phá băng thông bằng cách cứ upload lên những file kích thước hàng Gigabye, chỉ mới vài ngày đã ngốn hết bandwidth mà gói host có thể cung cấp, mua host thêm để có thể đáp ứng được thì là giải pháp tồi.
Mình đã thử tìm kiếm giải pháp để ngay khi bấm nút Submit thì nếu kiểm tra được kích thước file, thấy lớn sẽ ngừng upload ngay. Hiện tại, giới hạn cho upload chỉ có 2MB nhưng vì trong file php.ini trên host cho phép tới 500MB nên người ta cứ upload vô tội vạ, dĩ nhiên lên đó rồi thì ngốn băng thông, sau khi upload xong PHP mới phát hiện ra kích thước thì đã quá muộn.
Nhờ các bạn tìm giải pháp giúp cho vấn đề này. Đừng để xuất biện pháp phân quyền thành viên upload nhé, cách này chả ổn tí nào vì họ cũng có thể upload file lớn quá hạn, làm sao mà ta ngăn được khi họ đã có quyền upload.
Mình đã thử tìm kiếm giải pháp để ngay khi bấm nút Submit thì nếu kiểm tra được kích thước file, thấy lớn sẽ ngừng upload ngay. Hiện tại, giới hạn cho upload chỉ có 2MB nhưng vì trong file php.ini trên host cho phép tới 500MB nên người ta cứ upload vô tội vạ, dĩ nhiên lên đó rồi thì ngốn băng thông, sau khi upload xong PHP mới phát hiện ra kích thước thì đã quá muộn.
Nhờ các bạn tìm giải pháp giúp cho vấn đề này. Đừng để xuất biện pháp phân quyền thành viên upload nhé, cách này chả ổn tí nào vì họ cũng có thể upload file lớn quá hạn, làm sao mà ta ngăn được khi họ đã có quyền upload.
Bài liên quan
Nếu thích tích hợp nó với một forum nào đó để chỉ cho phép member mới được upload thì contact tớ, báo giá luôn: 3 triệu nếu tích hợp với phpBB3, 2 triệu nếu tích hợp với vBB, các forum khác chưa thử bao giờ nên sẽ là 5 triệu
Nói chung làm để cho người dùng tiện lợi thì làm chứ mà làm để chống kẻ phá hoại thì không có tác dụng đâu. Vì việc upload là công việc giữa Browse <=> Server chứ không phải là công việc của Browse và php chính vì thế mình không chống lại được.
Tôi thấy trên mạng có vài script js kiểm tra dung lượng file khi upload. có thể dụng nó được.
Tuy nhiên như đã nói ở trên. hacker có thệ tự tạo một form trên local và upload bình thường, băng thông bạn vẫn tốn như thường...
Chống người ngay thì dễ chứ chống sao được kẻ gian