Proxying

A reverse proxy server is a type of proxy server that sits behind the firewall in a private network and directs client requests to the appropriate backend server. A reverse proxy provides additional level of abstraction and control in order to ensure smooth flow of network traffic between clients and servers.

You may want to use reverse proxy for TLS termination, caching and compressing content, or some other purpose.

Here is an example of Nginx configuration file:

server {
  listen 443 ssl;
  server_name <your_adcm_domain>;
  ssl_certificate      example.crt;
  ssl_certificate_key  example.key;
  ssl_protocols        TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers          HIGH:!aNULL:!MD5;

  access_log /var/log/nginx/adcm.access.log;
  client_max_body_size 60M;  # used to increase size of an uploaded file. Size by default is 1MB

  location / {
    proxy_pass http://<ip_adcm>:<port_adcm>;
    proxy_read_timeout 90;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto https;
  }

  location /ws {  # used for proxying websocket API
    proxy_pass http://<ip_adcm>:<port_adcm>;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}
Found a mistake? Seleсt text and press Ctrl+Enter to report it