How to server HTTP/2 Protocol with django How to server HTTP/2 Protocol with django django django

How to server HTTP/2 Protocol with django


You can do with Nginx proxy

if you have existing nginx config. you do by just adding a word .http2 in listen

    listen 443 ssl http2 default_server;

full document avaliable in

https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-with-http-2-support-on-ubuntu-16-04


One option is to use Apache httpd server with mod_wsgi. Apache supports terminating HTTP/2. The link to your Django application is still via WSGI API so you don't really get any access to HTTP/2 specific features in your application. You can though configure Apache to do things like server push on your behalf.


To support HTTP 2.0, You can deploy Django apps on web servers like Daphne using ASGI (which is the spiritual successor to WSGI).

you can read more about deploying Django with ASGI in the official documentaion

to read more about ASGI and what is it, introduction to ASGI
to read more about Daphne server, official repository