Заголовки: X-Frame-Options
Заголовок X-Frame-Options
Примечание: Более широкие возможности, чем у этого заголовка, предоставляет директива frame-ancestors в заголовке Content-Security-Policy.
HTTP-заголовок ответа X-Frame-Options указывает, следует ли браузеру разрешить отображение документа в элементе <frame>, <iframe>, <embed> или <object>. Сайты могут использовать этот заголовок, чтобы предотвращать атаки типа кликджекинг и некоторые межсайтовые утечки, не позволяя встраивать свой контент на другие сайты.
Если этот заголовок не отправляется, а на сайте не реализованы другие механизмы ограничения встраивания (например, директива CSP frame-ancestors), браузер разрешит другим сайтам встраивать этот документ.
| Тип заголовка | Заголовок ответа |
|---|
Синтаксис
X-Frame-Options: DENY X-Frame-Options: SAMEORIGIN
Директивы
DENY-
Документ нельзя загрузить ни в один фрейм, независимо от источника (встраивание с того же и с другого источника запрещено).
SAMEORIGIN-
Документ можно встраивать, только если все родительские фреймы имеют тот же источник, что и сама страница.
ALLOW-FROM origin-
Эта директива устарела. Современные браузеры, получившие заголовки ответа с этой директивой, полностью игнорируют заголовок. HTTP-заголовок
Content-Security-Policyсодержит директивуframe-ancestors, которую следует использовать вместо неё.
Примеры
Предупреждение: Указание X-Frame-Options внутри элемента <meta> (например, <meta http-equiv="X-Frame-Options" content="deny">) не даёт эффекта. X-Frame-Options применяется только через HTTP-заголовки, как показано в примерах ниже.
Настройка Apache
Чтобы настроить Apache на отправку заголовка X-Frame-Options для всех страниц, добавьте следующую директиву в конфигурацию сайта:
Header always set X-Frame-Options "SAMEORIGIN"
Чтобы настроить Apache на установку значения DENY для X-Frame-Options, добавьте следующую директиву в конфигурацию сайта:
Header set X-Frame-Options "DENY"
Настройка Nginx
Чтобы настроить Nginx на отправку заголовка X-Frame-Options, добавьте следующую директиву в конфигурацию http, server или location:
add_header X-Frame-Options SAMEORIGIN always;
Задать для заголовка X-Frame-Options значение DENY можно с помощью следующей директивы:
add_header X-Frame-Options DENY always;
Настройка IIS
Чтобы настроить IIS на отправку заголовка X-Frame-Options, добавьте следующую директиву в файл Web.config вашего сайта:
<system.webServer>
…
<httpProtocol>
<customHeaders>
<add name="X-Frame-Options" value="SAMEORIGIN" />
</customHeaders>
</httpProtocol>
…
</system.webServer>
Дополнительные сведения см. в статье службы поддержки Microsoft о настройке этого параметра с помощью интерфейса IIS Manager.
Настройка HAProxy
Чтобы настроить HAProxy на отправку заголовка X-Frame-Options, добавьте следующую директиву в конфигурацию front-end, listen или backend:
rspadd X-Frame-Options:\ SAMEORIGIN
В более новых версиях можно использовать альтернативный вариант:
http-response set-header X-Frame-Options SAMEORIGIN
Настройка Express
Чтобы задать значение SAMEORIGIN для X-Frame-Options с помощью Helmet, добавьте следующий код в конфигурацию сервера:
import helmet from "helmet";
const app = express();
app.use(
helmet({
xFrameOptions: { action: "sameorigin" },
}),
);
Спецификации
| Спецификация |
|---|
| HTML> # the-x-frame-options-header> |
Совместимость с браузерами
| Настольные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome для Android | Firefox для Android | Opera для Android | Safari для iOS | Samsung Internet | WebView для Android | WebView для iOS | |
DENY |
4 | 12 | 4 | 10.5 | 4 | 18 | 4 | 14 | 3.2 | 1.0 | 4.4 | 3.2 |
SAMEORIGIN |
4Начиная с Chrome 61, это правило применяется ко всем предкам фрейма. |
12 | 4Начиная с Firefox 59, это правило применяется ко всем предкам фрейма. |
15Начиная с Opera 48, это правило применяется ко всем предкам фрейма. |
4 | 18Начиная с Chrome для Android 61, это правило применяется ко всем предкам фрейма. |
4Начиная с Firefox для Android 59, это правило применяется ко всем предкам фрейма. |
14Начиная с Opera для Android 45, это правило применяется ко всем предкам фрейма. |
3.2 | 1.0Начиная с Samsung Internet 8.0, это правило применяется ко всем предкам фрейма. |
4.4Начиная с WebView для Android 61, это правило применяется ко всем предкам фрейма. |
3.2 |
X-Frame-Options |
4 | 12 | 4 | 10.5 | 4 | 18 | 4 | 14 | 3.2 | 1.0 | 4.4 | 3.2 |
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/X-Frame-Options