Изменение 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";
}
Таким образом, вы можете добавить другие соответствующие соответствия и т. Д., Соответствующие вашей конфигурации.