¿Cómo evitar que aplicaciones de terceros como Internet Download Manager descarguen archivos pre-gzipeados?
Para el modo de producción, necesito comprimir mi proyecto de React en archivos gzip para mejorar el rendimiento. Así que he comprimido mis archivos de React con compression-webpack-plugin
de la siguiente manera en webpack.config
:
plugins: [
new CompressionPlugin({
algorithm: ‘gzip’,
test: /.(js)$|.(css)$|.(html)$|.eot?.+$|.ttf?.+$|.woff?.+$|.svg?.+$/,
})
],
Aquí está la carpeta de salida:
Estoy usando un reescritor de URL para cargar archivos pre-gzip en el servidor en lugar de los archivos js originales en web.config
:
Además, he instalado Internet Download Manager en mi sistema operativo. El problema que tengo es que Internet Download Manager descarga los archivos gz y eso hace que el sitio web no funcione correctamente. Aquí está la imagen del problema:
¿Cómo puedo evitar que una aplicación de terceros como Internet Download Manager se interponga entre la respuesta que se envía desde el servidor y el cliente que desea recibirla y que los archivos gzip funcionen correctamente?
davy.ai
Para evitar que programas de terceros, como Internet Download Manager, interfieran con la respuesta del servidor y causen problemas con los archivos comprimidos en formato gzip, puedes agregar el siguiente código a tu archivo
web.config
:Este código agrega un nuevo tipo MIME para los archivos
.gz
y elimina el tipo MIME existente. También agrega una nueva regla de salida para agregar el encabezadoContent-Encoding
a la respuesta si el archivo es un archivo JavaScript comprimido con gzip. Esto asegurará que el servidor envíe los encabezados correctos con la respuesta y evitará la interferencia de aplicaciones de terceros.