การเปลี่ยนแปลงContent-Type
ของ.txt
ไฟล์อาจทำงานได้ แต่มันเป็นวิธีที่ค่อนข้างมีความเสี่ยงที่จะแก้ปัญหานี้เพราะคุณไม่สามารถรับประกันได้ 100% ว่าเบราว์เซอร์ของผู้ใช้จะตอบสนองต่อวิธีการที่คุณคาดหวัง นอกจากนี้ยังทำให้เข้าใจผิดว่าติดป้ายกำกับ.txt
ไฟล์เป็นไฟล์ไบนารี
ฉันขอแนะนำให้ใช้วิธีมาตรฐานในการบังคับให้เบราว์เซอร์ดาวน์โหลดแทนที่จะแสดงไฟล์ซึ่งจะใช้Content-Disposition
ส่วนหัวที่มีค่าเป็นattachment
( RFC 2183โปรดดูRFC 2616 ด้วย )
ตัวอย่างเช่นlocation
บล็อกnginx นี้จะส่งส่วนหัวดังกล่าวพร้อม.txt
ไฟล์ภายใต้/downloads/
URI และจะถูกบังคับให้ดาวน์โหลด:
location ~ ^/downloads/.*\.txt$ {
add_header Content-Disposition "attachment";
}
ดังนั้นคุณสามารถเพิ่มการจับคู่ที่เหมาะสมอื่น ๆ ฯลฯ ที่เหมาะสมกับการกำหนดค่าของคุณ