Using a reverse proxy
While Odoo itself can serve web pages, it is strongly recommended to have a reverse proxy in front of it. A reverse proxy acts as an intermediary managing the traffic between the clients sending requests and the Odoo servers responding to them. Using a reverse proxy has several benefits.
On the security side, it can do the following:
- Handle (and enforce) HTTPS protocols to encrypt traffic
- Hide the internal network characteristics
- Act an "application firewall" limiting the URLs accepted for processing
And on the performance side, it can provide significant improvements:
- Cache static content, thus reducing the load on the Odoo servers
- Compress content to speed up loading times
- Act as a load balancer distributing load between several servers
Apache is a popular option to use as reverse proxy. Nginx is a recent alternative with good technical arguments. Here we will choose to use nginx as a reverse proxy and show how it can be used perform the functions mentioned above...