Перейти к содержанию

Рекомендуемая конфигурация

Как и для любого другого приложения, важно проверить параметры конфигурации, чтобы защитить и оптимизировать сайт.

Рабочая версия сайта

Важно защитить рабочую версию сайта, усилив конфигурацию. Для этого рекомендуем задать в основной конфигурации в user/config/ настройки по умолчанию, которые вы хотите использовать в боевом окружении, и переопределять их в окружении сайта разработки, например в user/env/localhost или user/env/site.local. Настройки рабочей версии сайта также можно переопределять через окружения, например если вы используете мультисайт на нескольких доменах.

Системная конфигурация (user/config/system.yaml)

force_ssl: true       # Только HTTPS (редирект с HTTP -> HTTPS)

cache:
  enabled: true       # Сильно ускоряет сайт
  check:
    method: hash      # Оптимизация: отключает проверку изменения файлов страниц

twig:
  cache: true         # Сильно ускоряет сайт
  debug: false        # Не хотим показывать отладочные сообщения
  auto_reload: false  # Оптимизация: отключает проверку изменения Twig-файлов
  autoescape: true    # Защищает от многих XSS-атак, но требует доработки Twig в старых сайтах/темах/плагинах

errors:
  display: 0          # Показывать только простое сообщение об ошибке
  log: true           # Записывать ошибки в журнал для последующего изучения

debugger:
  enabled: false      # Никогда не оставляйте отладчик включённым на рабочей версии сайта.
  censored: true      # Если всё же включите отладчик, не показывайте конфиденциальную информацию

session:
  enabled: true       # ПРИМЕЧАНИЕ: отключите сессии, если не используете вход пользователей и/или формы.
  secure: true        # Используйте, так как сайт должен работать только по HTTPS
  httponly: true      # Защищает cookie сессии от клиентских скриптов и XSS
  samesite: Strict    # Предотвращает все атаки межсайтового скриптинга
  split: true         # Отделяет сессию админки от сессии сайта для дополнительной безопасности

strict_mode:          # Проверьте сайт перед изменением. Убирает обратную совместимость и повышает безопасность сайта.
  yaml_compat: false
  twig_compat: false
  blueprint_compat: false

Сайт для разработки

Для сервера разработки есть несколько настроек, которые стоит изменить, чтобы обновлять сайт было удобнее.

Системная конфигурация (user/env/localhost/config/system.yaml)

Примечание

Совет: замените localhost на имя вашего локального сервера.

force_ssl: false      # Если сайт разработки не использует SSL

cache:
  enabled: true       # Всё равно оставляем кэш включённым
  check:
    method: file      # Позволяет обновлять страницы без очистки кэша

twig:
  cache: true         # Всё равно оставляем кэш включённым
  debug: true         # Хотим показывать отладочные сообщения
  auto_reload: true   # Возможно, мы редактируем Twig-файлы

errors:
  display: 1          # Показывать полную трассировку при ошибках

debugger:
  enabled: true       # Отладчик удобно иметь под рукой
  censored: false     # Возможно, мы хотим видеть защищённое содержимое в отладчике

session:
  secure: false       # Если сайт разработки не использует SSL
  httponly: false     # Если сайт разработки не использует SSL

strict_mode:          # Эти настройки помогают держать сайт в соответствии с последними стандартами
  yaml_compat: false
  twig_compat: false
  blueprint_compat: false