Архитектура веб-сервера nginx — модульная и событийно-ориентированная. При правильной настройке она выигрывает у потокового Apache в производительности.
Этот модульный генератор конфигов для nginx поможет сгенерировать лучший конфиг для вашего конкретного кейса: https://nginxconfig.io/
Просто выберите необходимые параметры и скачайте получившийся конфиг. К тому же есть пресеты для популярных платформ, например для WordPress.
#бэкенд #nginx
Этот модульный генератор конфигов для nginx поможет сгенерировать лучший конфиг для вашего конкретного кейса: https://nginxconfig.io/
Просто выберите необходимые параметры и скачайте получившийся конфиг. К тому же есть пресеты для популярных платформ, например для WordPress.
#бэкенд #nginx
Справочник по nginx
Ресурсов по nginx много, а хочется, чтоб был один, в котором всё есть. И, собственно, вот он: https://github.com/trimstray/nginx-admins-handbook
Здесь вы сможете узнать о многих функциях и возможностях nginx. Например, как протестировать производительность или решить проблемы с отладкой. Также тут есть инструкции по конфигурированию, паттерны по безопасности, способы решения популярных проблем и многое другое.
#бэкенд #nginx
Ресурсов по nginx много, а хочется, чтоб был один, в котором всё есть. И, собственно, вот он: https://github.com/trimstray/nginx-admins-handbook
Здесь вы сможете узнать о многих функциях и возможностях nginx. Например, как протестировать производительность или решить проблемы с отладкой. Также тут есть инструкции по конфигурированию, паттерны по безопасности, способы решения популярных проблем и многое другое.
#бэкенд #nginx
Gixy — статический анализатор конфигураций nginx, разработанный в Яндексе.
Поможет отыскать подделки запросов со стороны сервера, переопределение заголовков ответов и многое другое. Подробности и нюансы использования в репозитории: https://github.com/yandex/gixy
#бэкенд #nginx
Поможет отыскать подделки запросов со стороны сервера, переопределение заголовков ответов и многое другое. Подробности и нюансы использования в репозитории: https://github.com/yandex/gixy
#бэкенд #nginx
Как эффективно мониторить метрики nginx, если у вас не один и не два сервера? Например, с помощью связки nginx_vts_exporter + Prometheus + Grafana.
Руководство по настройке: https://tprg.ru/DZwl
#бэкенд #nginx
Руководство по настройке: https://tprg.ru/DZwl
#бэкенд #nginx
Правильно настроенный с точки зрения безопасности nginx-конфиг: https://gist.github.com/plentz/6737338
#бэкенд #nginx #безопасность
#бэкенд #nginx #безопасность
Cloudflare организовала поддержку HTTP/3 в nginx
Cloudflare создала модуль для поддержки HTTP/3 в nginx — это должно упростить развёртывание серверов с использованием протокола нового поколения. Он сделан в форме надстройки над библиотекой quiche. Написан на языке Си.
Штатную поддержку протокола в ветке 1.17 обещают обеспечить через 6−12 месяцев. Для сборки на основе версии nginx 1.16 нужен патч и код библиотеки quiche — после этого nginx нужно пересобрать с опциями —
Про сам HTTP/3 можно почитать у нас на сайте: https://tproger.ru/news/quic-standardize-http3/
#бэкенд #nginx #http
Cloudflare создала модуль для поддержки HTTP/3 в nginx — это должно упростить развёртывание серверов с использованием протокола нового поколения. Он сделан в форме надстройки над библиотекой quiche. Написан на языке Си.
Штатную поддержку протокола в ветке 1.17 обещают обеспечить через 6−12 месяцев. Для сборки на основе версии nginx 1.16 нужен патч и код библиотеки quiche — после этого nginx нужно пересобрать с опциями —
with-http_v3_module, —with-quiche=../quiche
. Поддержка TLS должна стоять на BoringSSL, OpenSSL пока не работает.Про сам HTTP/3 можно почитать у нас на сайте: https://tproger.ru/news/quic-standardize-http3/
#бэкенд #nginx #http
Что почитать по NGINX
Подборка самых актуальных книг по NGINX на русском и английском языках: https://tproger.ru/translations/nginx-books-and-sites/
А в конце подборки — 6 ресурсов с просторов интернета, которые тоже помогут в изучении системы.
#бэкенд #nginx
Подборка самых актуальных книг по NGINX на русском и английском языках: https://tproger.ru/translations/nginx-books-and-sites/
А в конце подборки — 6 ресурсов с просторов интернета, которые тоже помогут в изучении системы.
#бэкенд #nginx
Tproger
Что почитать по NGINX — подборка книг на русском и английском + дополнительные материалы
Давно хотели попробовать сервер NGINX, но не знали, где про него спросить? Держите список самых полезных материалов по настройке и принципам работы системы.
Если ещё не знали, то у DigitalOcean есть весьма удобный конфигуратор для Nginx, который покрывает большинство стандартных кейсов:
https://tprg.ru/paQG
#бэкенд #nginx #инструменты
https://tprg.ru/paQG
#бэкенд #nginx #инструменты
Оптимизация NGINX конфигураций
В блоге NGINX опубликовали статью с весьма полезными советами по оптимизациям NGINX. Всё довольно кратно, по делу и с дополнительными ссылками для изучения при необходимости:
https://tprg.ru/bfTs
#бэкенд #nginx
В блоге NGINX опубликовали статью с весьма полезными советами по оптимизациям NGINX. Всё довольно кратно, по делу и с дополнительными ссылками для изучения при необходимости:
https://tprg.ru/bfTs
#бэкенд #nginx
Магия вне Хогвартса: NJS
У тех, кто начинает работать с Nginx, может закипеть мозг при попытке разобраться в его работе. Это очень мощный, но сложный веб-сервер.
Эта статья призвана помочь разобраться с Nginx, используя для написания скриптов привычный большинству веб-разработчиков JavaScript:
https://tprg.ru/LWPl
#javascript #nginx
У тех, кто начинает работать с Nginx, может закипеть мозг при попытке разобраться в его работе. Это очень мощный, но сложный веб-сервер.
Эта статья призвана помочь разобраться с Nginx, используя для написания скриптов привычный большинству веб-разработчиков JavaScript:
https://tprg.ru/LWPl
#javascript #nginx
Если пропустили, тут Максим Дунин, один из ключевых разработчиков Nginx, форкнул проект, чтобы развивать его независимо как freenginx!
Nginx — веб-сервер, который работает под капотом подавляющего большинства сайтов и веб-сервисов. Это разработка российского инженера Игоря Сысоева. 4 года назад её купил американский F5, но в 2022 году московский офис компании закрыли, а Максим как один из основных разработчиков, остался в России и работал над проектом как волонтер.
Но сейчас Максим решил развивать проект самостоятельно после того, как у него возникли разногласия с компаниией F5. По его словам, недавно в F5 появилось несколько новых нетехнических менеджеров, которые решили, что они лучше знают, как запускать проекты с открытым исходным кодом.
Максим топит за то, что кодом пользуются люди и они имеют право знать, чего ожидать. freenginx должен стать проектом, свободным от корпоративного контроля.
Пока что ничего менять не нужно, nginx, скорее всего, будет развиваться так же, как и раньше. А вот за проектом Максима понаблюдать интересно: https://freenginx.org/pipermail/nginx/2024-February/000007.html
#nginx
Nginx — веб-сервер, который работает под капотом подавляющего большинства сайтов и веб-сервисов. Это разработка российского инженера Игоря Сысоева. 4 года назад её купил американский F5, но в 2022 году московский офис компании закрыли, а Максим как один из основных разработчиков, остался в России и работал над проектом как волонтер.
Но сейчас Максим решил развивать проект самостоятельно после того, как у него возникли разногласия с компаниией F5. По его словам, недавно в F5 появилось несколько новых нетехнических менеджеров, которые решили, что они лучше знают, как запускать проекты с открытым исходным кодом.
Максим топит за то, что кодом пользуются люди и они имеют право знать, чего ожидать. freenginx должен стать проектом, свободным от корпоративного контроля.
Пока что ничего менять не нужно, nginx, скорее всего, будет развиваться так же, как и раньше. А вот за проектом Максима понаблюдать интересно: https://freenginx.org/pipermail/nginx/2024-February/000007.html
#nginx
Вышел nginx 1.27.0
На днях разработчики опубликовали выпуск высокопроизводительного HTTP-сервера и многопротокольного прокси-сервера nginx 1.27.0.
Основные улучшения и изменения в nginx 1.27.0:
— в директивах proxy_limit_rate, fastcgi_limit_rate, scgi_limit_rate и uwsgi_limit_rate добавлена поддержка указания переменных;
— снижено потребление памяти при обработке долгоживущих запросов в конфигурациях, в которых используются директивы gzip, gunzip, ssi, sub_filter или grpc_pass;
— решены проблемы со сброкой в GCC 14 при использовании опции "--with-atomic";
— исправлены ошибки в реализации HTTP/3.
В основном в релиз попали изменения, связанные с устранением серьёзных ошибок и уязвимостей. В новом выпуске устранены 4 уязвимости: CVE-2024-34161, CVE-2024-31079, CVE-2024-32760 и CVE-2024-35200.
Они затрагивают экспериментальный модуль ngx_http_v3 (отключён по умолчанию), обеспечивающий поддержку протокола HTTP/3, использующего протокол QUIC в качестве транспорта для HTTP/2. Проблемы проявляются только при активации модуля ngx_http_v3_module и выставлении опции quic в директиве listen.
Уязвимость CVE-2024-34161 приводит к утечке содержимого памяти рабочего процесса на системах с MTU, выставленным в значение больше 4096 байт. Утечка содержимого памяти возникает в случае отправки кадров CRYPTO, используемых при согласовании соединения, на стадии после отправки клиентом финализирующего сообщения.
Уязвимости CVE-2024-31079, CVE-2024-32760 и CVE-2024-35200 вызваны повреждением памяти и позволяют удалённому атакующему добиться аварийного завершения рабочего процесса nginx через установку специально оформленного сеанса на базе протокола QUIC.
Подробнее: https://mailman.nginx.org/pipermail/nginx-announce/2024/TYTF6MMPG334S66IYMTAOYFO2LU7XN4R.html
#nginx
На днях разработчики опубликовали выпуск высокопроизводительного HTTP-сервера и многопротокольного прокси-сервера nginx 1.27.0.
Основные улучшения и изменения в nginx 1.27.0:
— в директивах proxy_limit_rate, fastcgi_limit_rate, scgi_limit_rate и uwsgi_limit_rate добавлена поддержка указания переменных;
— снижено потребление памяти при обработке долгоживущих запросов в конфигурациях, в которых используются директивы gzip, gunzip, ssi, sub_filter или grpc_pass;
— решены проблемы со сброкой в GCC 14 при использовании опции "--with-atomic";
— исправлены ошибки в реализации HTTP/3.
В основном в релиз попали изменения, связанные с устранением серьёзных ошибок и уязвимостей. В новом выпуске устранены 4 уязвимости: CVE-2024-34161, CVE-2024-31079, CVE-2024-32760 и CVE-2024-35200.
Они затрагивают экспериментальный модуль ngx_http_v3 (отключён по умолчанию), обеспечивающий поддержку протокола HTTP/3, использующего протокол QUIC в качестве транспорта для HTTP/2. Проблемы проявляются только при активации модуля ngx_http_v3_module и выставлении опции quic в директиве listen.
Уязвимость CVE-2024-34161 приводит к утечке содержимого памяти рабочего процесса на системах с MTU, выставленным в значение больше 4096 байт. Утечка содержимого памяти возникает в случае отправки кадров CRYPTO, используемых при согласовании соединения, на стадии после отправки клиентом финализирующего сообщения.
Уязвимости CVE-2024-31079, CVE-2024-32760 и CVE-2024-35200 вызваны повреждением памяти и позволяют удалённому атакующему добиться аварийного завершения рабочего процесса nginx через установку специально оформленного сеанса на базе протокола QUIC.
Подробнее: https://mailman.nginx.org/pipermail/nginx-announce/2024/TYTF6MMPG334S66IYMTAOYFO2LU7XN4R.html
#nginx
От монолита к микросервисам: реальный кейс развёртывания сайта на Spring Boot + Angular SSR с Docker и Nginx
У нас на сайте появилась статья, где автор делится практическим опытом перехода от монолитного приложения к микросервисной архитектуре с использованием Spring Boot и Angular SSR. В ней подробно описаны этапы:
— настройки Docker Compose;
— интеграции Nginx;
— настройки HTTPS;
— и решения проблем с CORS.
Также рассматриваются способы защиты от ботов и оптимизации конфигурации для стабильной работы сайта.
#java #docker #springboot #angular #nginx
У нас на сайте появилась статья, где автор делится практическим опытом перехода от монолитного приложения к микросервисной архитектуре с использованием Spring Boot и Angular SSR. В ней подробно описаны этапы:
— настройки Docker Compose;
— интеграции Nginx;
— настройки HTTPS;
— и решения проблем с CORS.
Также рассматриваются способы защиты от ботов и оптимизации конфигурации для стабильной работы сайта.
#java #docker #springboot #angular #nginx