Code Monkey home page Code Monkey logo

Comments (2)

GrahamDumpleton avatar GrahamDumpleton commented on July 2, 2024

You can create a derived Docker image which installs mod_xsendfile, but the image doesn't use the system Apache packages as they do not support HTTP/2. This means you cannot simply install any mod_xsendfile packaged by the Linux distribution. You would instead need to down mod_xsendfile source yourself and build it using the Apache version which has been installed.

That said, there are few issues.

The first is whether I should consider including mod_xsendfile myself since you aren't likely to be the last to ask.

The second is though that depending on your requirements, mod_wsgi in daemon mode (as it runs with this Docker image), has something similar to mod_xsendfile. That is, you can return an empty 200 response with a Location header with a URL path to a subsequent resource to be served up.

So it isn't a file system path and as a result the URL must be able to be mapped by Apache, but it can map to static files. If those static files need to be private and not directly accessible, there is a little bit of extra config required to protect them. The 200/Location mechanism may not be supported by extensions for frameworks for doing this sort of delegation of file serving.

The third is that mod_wsgi-docker is heading towards being marked as deprecated. I have a much better version of the image which does things a lot better and is much more flexible. Depending on how you are using the current image, you may need to tweak some things, but otherwise shouldn't be that hard to move to it when it is marked as ready for use.

So quickest thing initially can do is see whether can use the 200/Location mechanism instead. What WSGI framework are you using and are you using some extension for that which tries to wrap up this functionality, or are you setting headers directly?

from mod_wsgi-docker.

dAnjou avatar dAnjou commented on July 2, 2024

Thanks for replying.

I wasn't using anything before, so my question came up while evaluating options, in the end I went with httpd's image and installed mod_wsgi and mod_xsendfile using apxs.

I think it's crucial though that an image based on httpd supports other modules.

from mod_wsgi-docker.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.