Dec 2, 2007

ปัญหา upload file ของ ASP กับ Windows Server 2003

ในช่วงสองสามเดือนที่ผ่านมา ผมเฝ้ามองหาวิธีการของการ upload file สำหรับ
ภาษา ASP VB Script ซึ่งยอมรับว่าหายากมาก เพราะส่วนใหญ่นั้นจะเป็น
Component เสริม ซึ่งต้องซื้อต่างหากจาก บริษัท ต่างๆ
ซึ่งคงไม่ไหวแน่นอน ถ้าเพียงต้องการแค่ให้ upload file ได้

ทำไมของฟรีมี จึงไม่ใช้?
ของฟรีที่ว่า ส่วนใหญ่แล้วจะอยู่ที่ PHP ซะมาก
เวลาทำอะไร ก็เพียงค้นๆ ใน google ไม่กี่นาทีก็ได้มาแล้ว
สำหรับ ASP นี้ ต้องมองหาจากผู้ที่เคยใช้มาแล้วบ้าง
หรือจากที่อื่นๆ ซึ่งผมก็นำ Source code ของ Webboard
ASPThai.net ซึ่งทางทีมงานที่นั่นได้แจกจ่ายให้นำไปใช้ได้
ซึ่งก็นำไปใช้และดัดแปลง เยอะพอสมควร
และก็ได้ศึกษา Source code บางส่วนของการ upload file ด้วยเช่นกัน

ทำไมเครื่อง Server ส่งข้อมูลไม่ได้ หรือถ้าได้ก็ไม่เกิน 200 kb?
ผมพบปัญหานี้หลังจากที่ได้ทดสอบด้วยการทำงานบน Server ของลูกค้า
ปัญหาที่เกิดขึ้นหลายๆ อย่าง ไม่เกิดกับเครื่องที่ผมลอง แต่ดันเกิดที่ Server
ผมพยายามคิดในทางลบไว้ก่อนว่า เป็นเพราะผมเขียน Code ได้ไม่ดี จึงเกิดปัญหา

ทำไมเครื่อง ส่วนตัวผมถึงไม่มีปัญหากรณี upload file เกิน 200 kb?
ผมทดสอบอยู่หลายรอบ จนแน่ใจแล้วว่า ไม่ได้เป็นที่ Source code ที่ผมเขียนลงไป
แต่เป็นที่เครื่อง server ของทางลูกค้าเอง

ปัญหานี้ใครจะรับผิดชอบ?
หลังจากสรุปปัญหาได้ ก็ลองสอบถามและแก้ไขดูเอง จนโดนผู้ดูแล Server ฝั่งลูกค้า
บ่นมาหลายที และในที่สุดผมจึงไม่ดำเนินการแก้ไขเอง แต่แจ้งทาง ผู้ดูแล Server แทน
พร้อมกันนั้นก็ได้ส่ง ข้อมูล ที่น่าจะช่วยแก้ไขปัญหาดังกล่าวได้ ว่าต้องไป config server อย่างไร

สรุปแล้วปัญหาเกิดจากอะไร?
ปัญหาเกิดจาก Windows Server 2003 นั้นถูกกำหนดค่าให้สามารถที่จะ upload file
ได้ไม่เกิน 200 kilobyte หรือในค่าที่ตั้งไว้คือ 204800 byte
ดังนั้นถ้าหากต้องการให้รับไฟล์ได้มากกว่าที่กำหนด ก็ต้องเข้าไปปรับเปลี่ยนที่ค่าดังกล่าว
คือที่ C:\Windows\System32\inetsrv\metabase.xml
โดยหาบรรทัดที่เขียนว่า AspMaxRequestEntityAllowed เมื่อเจอแล้วให้เปลี่ยนเป็นค่าใหม่
ส่วนที่เครื่องของผมนั้น สามารถรับไฟล์ได้ขนาดใหญ่ และไม่เกิดปัญหาเพราะเป็น windows xp Profressional
ซึ่งเท่าที่สังเกต ปัญหานี้น่าจะเป็นเฉพาะกับ Windows Server 2003 เท่านั้น
สำหรับแหล่งอ้างอิงที่ทำให้ผมแก้ไขปัญหาได้คือ
http://www.dvhome.co.uk/45/

No comments:

Post a Comment

Blog Comment

บทความที่ได้รับความนิยม