Pregunta

Estoy tratando de servir archivos estáticos para descarga en una aplicación Django, pensé que me gustaría poner los archivos estáticos en / media / archivos y tienen Apache establece el encabezado de tipo de contenido application / octet-stream (el archivos para descargar van a ser archivos de texto, pero voy a trabajar en los detalles más adelante).

Para ello he activado mod_headers y luego en la configuración de Apache hice esto:

<Location "/media/files">
    Header set Content-Type "application/octet-stream"
</Location>

Después de hacer esto me reinicia apache y probamos un archivo de ejemplo pero no funciona, sigo teniendo text / plain en el tipo de contenido y el navegador no me pedirá que descargue nada.

Por cierto Sé que se recomienda el uso de un servidor web diferente para los archivos estáticos, pero no tengo mucho control en el servidor Voy a implementar, que tiene que ser solamente Apache con mod_python.

¿Fue útil?

Solución

Puede haber cualquier número de problemas (se necesita mucha más información que usted ha proporcionado a rastrear hacia abajo algunos problemas de configuración de Apache), pero aquí están algunas ideas:

  • ¿Estás absolutamente seguro de este fragmento se está aplicando a los archivos de la derecha (por ejemplo, si hay varios servidores virtuales, y se pegan esto en el incorrecto, bueno ..)
  • ¿Tiene la reescritura pasando que podrían evitar que esto sea visto como un partido?
  • ¿Está indicando en la cabecera Content-Type otra parte?
  • ¿Usted tiene el contenido de arbitraje pasando? Dependiendo, que podría invalidar cualquier cosa que hagas en las cabeceras.

Una cosa que puede probar es añadir alguna otra cabecera y ver si se trata de volver. Además, trate de hacer la solicitud usted mismo con telnet o elsewise reducir el número de las cosas entre usted y el servidor. Utilice los archivos de registro. Ellos están ahí para ayudarte. Buena suerte.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top