apache httpd - сливане на заглавка, игнориране на съществуваща заглавка

Използвайки apache mod_proxy 2.5, опитвам се да обединя или заменя съществуваща заглавка access-control-allow-origin с mod_headers в местоположение на proxypass. отговорът, върнат от прокси сървъра, вече включва заглавка access-control-allow-origin, която бих искал да обединя или заменя

Header always merge Access-Control-Allow-Origin  "*" 
Header always set Access-Control-Allow-Methods "OPTIONS, GET" 
Header always set Access-Control-Max-Age "1000" 
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token, x-smp-appcid"

Това води до дублиране на заглавка, което поражда грешка във всички браузъри, тъй като тази заглавка може да се появи само веднъж.

същото важи и за Header винаги е зададено, въпреки че това трябва да замени съществуващото заглавие.

Също така се опитах да използвам модула if, за да проверя първо за възникване на заглавките и да задам само ако не е зададено. но някак си е трудно да се разгледат заглавките на отговорите.

всяка помощ се оценява


person Martin    schedule 18.05.2015    source източник


Отговори (1)


Преодолях същия проблем, като зададох заглавките Access-Control-Allow-Origin и Access-Control-Allow-Credentials само когато е заявка за предварителна проверка

Втората заявка (POST, DELETE, PUT и т.н.), която се обработва от прокси сървъра (който вече изпраща необходимите заглавки), не е предварителна заявка и следователно заглавките няма да бъдат зададени отново от Apache правила.

За да проверите за предварителна заявка, можете да проверите дали заявката съдържа:

  1. REQUEST_METHOD == ОПЦИИ
  2. Access-Control-Request-Method !-= ""
  3. Произход != ""

Надявам се това да помогне.

person Agraj    schedule 09.10.2015