auth basic и backend, который не любит request header "Authorization"

vgoncharov nginx-forum на nginx.us
Вс Май 2 23:37:28 MSD 2010


Всем привет.

Использую nginx/0.7.65 как акселератор для backend сервера.
Необходимо использовать auth_basic в случае, если $query_string соответсвует определенному регулярному выражению.

Все работет. Однако, после успешной авторизации браузер в каждом запросе шлет заголовок запроса "Authorization: блаблабла". А nginx отправляет его на backend сервер.

А моему backend-серверу от этого заголовка (request header) становится плохо и он работает с ним не правильно.

Как научить nginx не слать некоторые заголовки запрорса на backend сервер? Вроде как должна бы быть директива типа proxy_hide_request_header, но ее и гуглом не обнаруживается.

Можно как-то помочь моему горю и убедить nginx не слать Authorization на backend?

Вот выдержки из моего конфига:

location /abc {
    if ($args !~ "^def\=123\:?") {
      rewrite ^/abc$ /ABC last;
    }
    proxy_pass        http://backend:8080;
    #proxy_hide_request_header Authorization # Этого хочется
  }

location /ABC {
    internal;
    auth_basic "Access denied";
    auth_basic_user_file /path/to/.htpasswd;
    proxy_pass        http://backend:8080;
    #proxy_hide_request_header Authorization # Этого хочется
  }

Backend сервер подкрутить не представляется возможным. Это Oracle XE. Можно между nginx и oracle поставить apache. Но хочется без лишних звеньев.

Спасибо,
Владимир

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,81782,81782#msg-81782




Подробная информация о списке рассылки nginx-ru