Я пытаюсь установить X-Frame-Options с помощью IBM HTTP Server (IHS) 8.5.5.12, основанного на apache HTTP Server 2.2.32.
Я пробовал использовать SetEnvIf, но не знаю, как сравнить переменную среды в файле httpd.conf.
Я пробовал то же самое в IHS 9 с условием If, и он работает, но не знаю, как реализовать то же самое в IHS 8.5.5.12.
<IfModule mod_headers.c>
<If "%{HTTP:X-Requested-From} == 'mobileapp'">
Header unset X-Frame-Options
</If>
<Else>
Header set X-Frame-Options SAMEORIGIN
</Else>
</IfModule>
Приведенный выше код отлично работает в IHS 9. Может ли кто-нибудь здесь помочь?
С уважением Мохаммад Ашфак
Уловка здесь в том, что директива Header
может быть условной в Apache 2.2, но только для переменной среды. Но SetEnvIf
запускается первым и может установить переменную среды на основе заголовка запроса:
SetEnvIf X-Requested-From mobileapp is_mobile=1
Header set X-Frame-Options SAMEORIGIN
Header unset X-Frame-Options env=is_mobile
$ wget -qS http://localhost 2>&1 |grep X-F X-Frame-Options:
SAMEORIGIN
$ wget -qS --header = "X-Requested-From: mobileapp"
http://localhost 2>&1 |grep X-F
$