Mengubah Content-Typedari .txtfile dapat bekerja, tapi itu cara yang agak berisiko untuk memecahkan masalah ini, karena Anda tidak dapat menjamin 100% bahwa browser pengguna akan merespon bagaimana Anda harapkan. Dan lebih jauh lagi, itu menyesatkan untuk memberi label .txtfile sebagai file biner.
Sebagai gantinya, saya sarankan menggunakan cara standar untuk memaksa browser mengunduh daripada menampilkan file, yaitu menggunakan Content-Dispositionheader dengan nilai attachment( RFC 2183 , lihat juga RFC 2616 ).
Misalnya, locationblok nginx ini akan mengirimkan header seperti itu dengan .txtfile - file di bawah /downloads/URI dan karenanya mereka akan dipaksa untuk mengunduh:
location ~ ^/downloads/.*\.txt$ {
add_header Content-Disposition "attachment";
}
Jadi Anda bisa menambahkan pencocokan lain yang sesuai, dll, sesuai dengan konfigurasi Anda.