PHP :: readfile() và Output Buffering
Đăng trong danh mục PHP, Web Programming bởi admin | Tags: bug, gzip, output buffering, PHP, readfile
Hôm nay được một đồng nghiệp report một cái bug thật kỳ quặc…hem biết bà con nào đã bị dính chưa. Số là cái source PHP của mình có một trang cho phép download 1 file bằng cách sử dụng hàm readfile($filename) để tải file về…Cái source lúc đưa ra chạy rất OK và không có trục trặc gì cả..
Cho đến hôm nay, đồng nghiệp này nói là không download được file và download bị lỗi, mình cũng thật ngạc nhiên, chạy vô source thì chẳng có gì thay đổi. Hơi ngạc nhiên, mình debug 1 xíu thì thấy vấn đề ở chỗ hàm readfile(). Sau một hồi điều tra trên http://php.net/readfile, thì thấy có một ghi chú là cái hàm này có trục trặc khi sử dụng kèm với Output Buffering.
Tới đây mình mới chợt nhớ ra là cách đây nửa tháng mình có triển khai nén sử dụng Output Buffering để tiết kiệm Bandwidth nên thành ra bây giờ nó bị bug này.
Cách giải quyết: cũng khá đơn giản, chỉ cần gọi hàm “ob_end_clean()” trước hàm “readfile()” là mọi việc OK.
Mình note lại đây, hi vọng có bạn nào gặp vấn đề tương tự sẽ biết cách giải quyết. Chúc vui.
Bài viết liên quan:
1 Lời bình cho bài viết “PHP :: readfile() và Output Buffering”
Viết lời bình
Bình luận mới nhất
- phpmailer gởi mail SMTP bằng Gmail/Google Apps
"@trung, nếu vậy thì thử tes" - admin - phpmailer gởi mail SMTP bằng Gmail/Google Apps
"SMTP Error: Could not connect to SMTP host. mình đã làm đủ cách như e" - trung - Cấu hình domain ảo ở localhost
"Chào Cho mình hỏi mình co 1 server window dang chay IIS web asp.net " - Minh Phuong - dotProject - Online Project Management
"@tùng, lỗi quá rõ ràng rồi " - admin - dotProject - Online Project Management
"mình install báo lỗi: not create database.Mình không biết xử lý thế nà" - tùng - Review sách: Hiểu về trái tim - Minh Niệm
"may ban cho minh hoi la : minh nho` nguoi nha di mua sach dum, vi minh" - Tracy - Làm IT nên đọc ebook của nhà xuất bản nào?
"@Lê Hoàng Dũng, Mình cũng" - long - Hội thảo: Heavy Web Optimization – Back-end
"Đã là slide thì sao mà chi tiết được, thế mới gọi là thuyết trình chứ," - DaiGiaCaiBang - Hội thảo: Heavy Web Optimization – Back-end
"Nếu có thể thì anh Tuấn nên viết slide chi tiết hơn tí để mọi người kh" - ichuot - FBNC - Kênh truyền hình TPHCM "pro" nhất hiện nay!
"neu ban dung cap SCTV, ban co the xem SCTV8, day la kenh VITV phat son" - nga
Danh mục
- android (3)
- Business (24)
- Flash (1)
- Graphic Design (16)
- IT Guys (1)
- Javascript (9)
- Miscellaneous (58)
- Photography (9)
- PHP (41)
- Review sách (13)
- Search Engine Optimization (2)
- security (3)
- software (5)
- User Interface Design & Usability (8)
- Web Design (28)
- Web Programming (50)
Lưu trữ
- May 2012 (1)
- March 2012 (2)
- February 2012 (1)
- January 2012 (1)
- December 2011 (1)
- November 2011 (2)
- September 2011 (2)
- August 2011 (1)
- July 2011 (4)
- June 2011 (2)
- May 2011 (2)
- April 2011 (2)
- March 2011 (2)
- February 2011 (2)
- January 2011 (4)
- December 2010 (6)
- November 2010 (3)
- October 2010 (3)
- September 2010 (5)
- August 2010 (6)
- July 2010 (5)
- June 2010 (2)
- May 2010 (5)
- April 2010 (7)
- March 2010 (8)
- February 2010 (4)
- January 2010 (10)
- December 2009 (12)
- November 2009 (12)
- October 2009 (15)
- September 2009 (16)
- August 2009 (11)
- July 2009 (15)
- November 2008 (1)
- October 2008 (1)
- September 2008 (3)


March 15, 2010 at 4:46 pm
bài viết hay,
cám ơn bạn có tin thần chia sẽ
Chúc công việc luôn tốt!
Regards,
[Reply]