Soalan:
Bagaimanakah Django boleh menyediakan fail yang boleh dimuat turun dengan selamat sambil menyembunyikan muat turun terusnya laluan?
Jawapan:
Django tidak secara langsung menyokong penyajian fail yang boleh dimuat turun. Untuk melaksanakan fungsi ini, pertimbangkan pendekatan berikut:
Menggunakan Modul xsendfile
Kebaikan:
Pelaksanaan:
from django.utils.encoding import smart_str from django.http import HttpResponse def download_view(request): file_path = '/home/user/files/somefile.txt' file_name = 'somefile.txt' response = HttpResponse(content_type='application/force-download') response['Content-Disposition'] = 'attachment; filename=%s' % smart_str(file_name) response['X-Sendfile'] = smart_str(file_path) return response
Nota: Pendekatan ini memerlukan mod_xsendfile didayakan pada anda pelayan.
Kesimpulan:
Dengan menggunakan modul xsendfile, anda boleh menyampaikan fail yang boleh dimuat turun dengan selamat dalam Django sambil menghalang akses terus ke lokasi asalnya. Pendekatan ini menawarkan keselamatan dan fleksibiliti dalam mengendalikan muat turun fail.
Atas ialah kandungan terperinci Bagaimana untuk Melayan Fail Boleh Muat Turun dengan Selamat di Django Tanpa Mendedahkan Laluan Fail Terus?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!