HoHsi
@HoHsi

Почему NGINX удаляет глобальные header'ы?

Почему header из локали статики "location /public" удаляет глобальный хэдер "X-Create-By". И как этого избежать, не вставляя повторно этот хэдер в "public"?

server {
    listen       80;
    server_name  <тут урл>;

    access_log  <тут логи>;
    error_log  <тут логи>;

    add_header X-Create-By "HoHsi";

    # GZIP
    gzip on;
    gzip_disable "msie6";
    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript;

    location /public {
        # Срок годности
        # expires     1d;

        # <-- этот хэдер удалит "X-Create-By"
        add_header Cache-Control "max-age=10800000,  public";
        root <тут рут>;
    }

    location / {
        proxy_pass  <тут прокси>;
    }
}
  • Вопрос задан
  • 223 просмотра
Пригласить эксперта
Ответы на вопрос 1
@eoffsock
Кодер (Rails)
add_header применится в location{}, только если в location{} не определены другие add_header.

В документации:
nginx.org/en/docs/http/ngx_http_headers_module.htm...

There could be several add_header directives. These directives are inherited from the previous level if and only if there are no add_header directives defined on the current level.


Избежать — никак.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы