Cambio de la Content-Typede .txtarchivos puede trabajar, pero es una manera un tanto arriesgado para resolver este problema, porque no se puede garantizar al 100% que el navegador del usuario responderá cómo espera. Y además, es engañoso etiquetar un .txtarchivo como un archivo binario.
En cambio, sugiero usar la forma estándar para forzar a un navegador a descargar en lugar de mostrar el archivo, que es usar el Content-Dispositionencabezado con un valor de attachment( RFC 2183 , ver también RFC 2616 ).
Por ejemplo, este locationbloque nginx enviará un encabezado con .txtarchivos bajo el /downloads/URI y, por lo tanto, se verán obligados a descargar:
location ~ ^/downloads/.*\.txt$ {
add_header Content-Disposition "attachment";
}
Por lo tanto, puede agregar otras coincidencias apropiadas, etc., apropiadas para su configuración.