У нас есть приложение ruby, развернутое с использованием конфигурации nginx / passenger. Проблема в том, что в коде приложения заголовок X-Frame-Options
устанавливается внутри кода как SAMEORIGIN
. Но это только для определенных местоположений (что определяется фрагментом кода)
Для некоторых других местоположений тот же самый заголовок установлен как ALLOWALL
.
Проблема в том, что если этот заголовок не установлен для какого-либо другого местоположения (кроме описанного выше), тогда мне нужно установить заголовок в конфигурации nginx / passenger.
I попробовал это с помощью следующего скрипта
server {
....
....
location / {
if ($http_x_frame_options = "") {
add_header X-Frame-Options SAMEORIGIN always;
}
Но он полностью ломает мое веб-приложение. Я думаю, это из-за страницы If Is Evil .
Есть ли какой-нибудь альтернативный способ, которым я могу go об этом? Мне просто нужно убедиться, что на всех страницах веб-приложения установлены соответствующие заголовки X-Frame-Options, некоторые со стороны кода приложения, а другие, которые не изменены кодом приложения, из конфигурации nginx / passenger .