Добавление и использование заголовка (HTTP) в nginx

Я использую две системы (обе являются балансировщиком нагрузки nginx и одна действует как резервная копия). Я хочу добавить и использовать несколько пользовательских заголовков http. Пожалуйста, дайте ваше предложение

например

  upstream upstream0{
            #list of upstream servers
            server backend:80;
            server backup_load_balancer:777 backup;
            #healthcheck
  }

  server{
        listen  80;
        #Add custom header about the port and protocol  (http or https)
        server_name     _;
        location / {
                proxy_pass "http://upstream0;#" is included since links are not allowed in the post
        }

   }

// Резервная система

server{
        listen  777;
        server_name     _;
        #doing some other extra stuf

        #use port and protocol to direct
}

Спасибо

1 ответ

Решение

Если вы хотите добавить заголовки, то вы хотите что-то вроде этого:

server {
    listen  80;
    server_name     _;
    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-Frame-Options sameorigin;
    add_header X-UA-Compatible "IE=Edge,chrome=1";
    add_header X-Your-Port-Header-Here $server_port;
    add_header X-Your-Protocol-Header-Here $scheme;
    set $yourcustomheader $scheme$server_port;
    add_header X-Your-Custom-Header $yourcustomheader;
    location / {
            proxy_pass http://upstream0;
    }

}

Вы можете ссылаться на следующие переменные в Nginx. Если вышеприведенное не обеспечивает достаточной гибкости, взгляните на модуль HttpHeadersMore, но обратите внимание, что он не предоставляется в большинстве стандартных дистрибутивов Nginx, поэтому вам, возможно, придется скомпилировать его самостоятельно. Если вы используете Debian, вы можете найти его в пакете nginx-extras от Dotdeb.

Другие вопросы по тегам