html_sanitize_url_domain

Директива `html_sanitize_url_domain` указывает домены, включённые в белый список для URL в очищенном HTML-контенте.

Синтаксисhtml_sanitize_url_domain domain1 domain2 ...;
По умолчаниюnone
Контекстlocation
Аргументы1+

Описание

Директива html_sanitize_url_domain используется при очистке HTML-контента, позволяя только определённые домены для URL, присутствующих в элементах, таких как ссылки и изображения. Эта директива принимает один или несколько имён доменов в качестве аргументов, которые добавляются в белый список. При обработке HTML-контента любой URL, не совпадающий с указанными доменами, будет удалён или заменён, чтобы предотвратить потенциальные угрозы безопасности, такие как XSS (Cross-Site Scripting).

Каждый указанный домен может включать шаблоны с подстановочными символами, что обеспечивает гибкость при сопоставлении поддоменов. Например, указание 'example.com' позволит как 'example.com', так и любым поддоменам, например 'sub.example.com'. Эта функция важна для сохранения целостности пользовательского или внешнего контента в веб-приложениях при обеспечении безопасного просмотра. Кроме того, её часто используют вместе с другими директивами, которые обрабатывают элементы и атрибуты, что позволяет обеспечить всестороннюю очистку содержимого.

Пример конфига

location / {
    html_sanitize_url_domain example.com example.org;
    html_sanitize on;
}

Не забудьте указать протокол (http или https), если это необходимо, так как эта директива фильтрует только домен, а не полный URL.

Убедитесь, что добавили все необходимые поддомены в белый список, так как отсутствие требуемых доменов может привести к неработающим ссылкам в очищённом содержимом.

Несколько доменов должны разделяться пробелом, а любые ведущие или завершающие пробелы в именах доменов могут вызвать проблемы.

← Ко всем директивам