04.10.2022

Выпуск http-сервера Lighttpd 1.4.65

Состоялся релиз легковесного http-сервера lighttpd 1.4.65, пытающегося сочетать высокую производительность, безопасность, соответствие стандартам и гибкость настройки. Lighttpd пригоден для применения на высоконагруженных системах и нацелен на низкое потребление памяти и ресурсов CPU. В новой версии представлено 173 изменения. Код проекта написан на языке Си и распространяется под лицензией BSD.

Основные новшества:

  • Добавлена поддержка WebSocket поверх HTTP/2, а также реализован RFC 8441, описывающий механизм для запуска протокола WebSockets в одном потоке внутри соединения HTTP/2.
  • Реализована расширенная схема управления приоритетами, позволяющая клиенту влиять на приоритет передаваемых сервером ответов (RFC 9218), а также управлять приоритетами при перенаправлении запросов. Для HTTP/2 обеспечена поддержка кадра PRIORITY_UPDATE.
  • В настройках lighttpd.conf добавлена поддержка условных сопоставлений с привязкой к началу (=^) и концу (=$) строки. Подобные строковые проверки значительно быстрее регулярных выражений и достаточны для многих простых проверок.
  • В mod_webdav добавлена поддержка частичных операций PUT (охватывающих часть данных при помощи заголовка Range). Для включения можно использовать опцию ‘webdav.opts += («partial-put-copy-modify’ => «enable»)’.
  • В mod_accesslog добавлена опция ‘accesslog.escaping = ‘json'».
  • В mod_deflate добавлена поддержка сборки с libdeflate.
  • Ускорена передача тела запроса через HTTP/2.
  • Значение параметра server.max-keep-alive-requests по умолчанию изменено cо 100 до 1000.
  • В списке MIME-типов «application/javascript» заменён на «text/javascript» (RFC 9239).

На будущие запланировано применение более строгих настроек шифров для TLS и отключения по умолчанию устаревших шифров. Настройка CipherString будет изменена со значения «HIGH» на «EECDH+AESGCM:AES256+EECDH:CHACHA20:SHA256:!SHA384». Также запланированы к удалению устаревшие опции TLS: ssl.honor-cipher-order, ssl.dh-file, ssl.ec-curve, ssl.disable-client-renegotiation, ssl.use-sslv2, ssl.use-sslv3. Дополнительно будет продолжена чистка мини-модулей, которые можно заменить более гибкой Lua-реализацией mod_magnet. В частности, намечены к удалению модули mod_evasive, mod_secdownload, mod_uploadprogress и mod_usertrack.

Источник.