จากที่เราใช้ Kloxo เป็น webpanel ซึ่งสามารถเปลี่ยนจาก apache มาใช้ lighttpd ซึ่งมันมีคุณสมบัติอย่างนึงที่ผมต้องการคือ สามารถเปิดใช้ x-sendfile ในการส่งไฟล์ได้ เรามาเริ่ม config มาเริ่มเลยนะครับ
ขั้นแรก เราต้องเปิดการใช้งานงาน โดยเข้าไปแก้ไขไฟล์ /etc/lighttpd/conf/kloxo/lighttpd.ชื่อเว็บที่เราต้องการเปิดใช้ และให้เพิ่มบรรทัดตัวสีแดงเข้าไปนะครับ
fastcgi.server = (
".php" => ( (
# ....
"allow-x-send-file" => "enable"
))
)
ขั้นที่ 2 เขียน php เพื่อทำการส่งไฟล์
$full_path = “/home/admin/my.domain.com/storage/”.$filename; //ตัวหนาคือ path จริงของไฟล์ แบบ full path นะครับ
header(“X-LIGHTTPD-send-file: “.$full_path);
header(“Content-type: “.$mimetype); // บอกชนิดไฟล์ เช่น application/zip แบบนี้ซึ่งหาคู่มืออ่านต่อไปเองนะครับ
header(“Content-Disposition: attachment; filename=\”".$originalfilename.”\”"); //ชื่อไฟล์ที่แสดงในการดาวน์โหลด
ไม่มีความคิดเห็น:
แสดงความคิดเห็น