Как исправить Safari, игнорируя Content-Security-Policy, когда X-Frame-Options указаны в Apache? - PullRequest
0 голосов
/ 31 января 2019

Относительно этого вопроса

Я боролся с тем, что мой iframe из другого домена не загружался должным образом в Safari и не знал, что делать.Проблема в том, что Safari 12 по состоянию на январь 2019 года по-прежнему расставляет приоритеты X-Frame-Options над Content-Security-Policy.

. У меня был следующий конфиг в .htaccess:

Header always append X-Frame-Options SAMEORIGIN
Header always append Content-Security-Policy "frame-ancestors 'self' *.master-domain.com *.alternative-domain.com"

, и хотя это отлично работало в Firefox, Chrome и даже Edge (все просто игнорируют устаревшую X-Frame-Options при отправке функции более богатой Content-Security-Policy), Safari по какой-то причине предпочтет расставить приоритеты старых X-Frame-Options.Более того, Safari сам будет считать значение по умолчанию X-Frame-Options: DENY, не позволяя использовать все, как в других браузерах.Это делает практически невозможным загрузку iframe в Safari для нескольких доменов.

1 Ответ

0 голосов
/ 31 января 2019

Лучшее решение - удалить заголовок для Safari, используя только BrowserMatch и условный синтаксис заголовка

BrowserMatch "Safari" ISSAFARIBROWSER
Header always append X-Frame-Options SAMEORIGIN
Header always unset X-Frame-Options env=ISSAFARIBROWSER
Header always append Content-Security-Policy "frame-ancestors 'self' *.master-domain.com *.alternative-domain.com"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...