Доступен (http://mailman.nginx.org/pipermail/nginx-announce/2019/00024...) выпуск основной ветки nginx 1.17.1 (http://nginx.org), в рамках которой продолжается развитие новых возможностей (в параллельно поддерживаемой стабильной ветке 1.16 (https://www.opennet.ru/opennews/art.shtml?num=50561) вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей.
Основные изменения (http://nginx.org/en/CHANGES):
- Добавлена директива limit_req_dry_run (http://nginx.org/en/docs/http/ngx_http_limit_req_module.html...), которая активирует режим пробного запуска, в котором не применяются ограничения на интенсивность обработки запросов (без rate limit), но продолжается учёт выходящего за лимиты числа запросов в разделяемой памяти;
- При использовании в блоке настроек "upstream" директивы "hash (http://nginx.org/en/docs/http/ngx_http_upstream_module.html#...)" для организации балансировки нагрузки с привязкой клиента к серверу, в случае указания пустого значения ключа теперь активируется режим равномерной балансировки (round-robin);
- Устранён крах рабочего процесса при использовании кэша в сочетании с директивой "image_filter" и перенаправлением обработчика кода ошибки 415 с использованием директивы "error_page";
- Устранён крах рабочего процесса, проявляющийся при использовании встроенного интерпретатора Perl.
Дополнительно можно отметить выпуск (http://mailman.nginx.org/pipermail/nginx-announce/2019/00024...) njs 0.3.3, интерпретатора языка JavaScript для веб-сервера nginx. Интерпретатор njs реализует стандарты ECMAScript и позволяет расширять возможности nginx по обработке запросов с помощью скриптов в конфигурации. Скрипты могут использоваться в файле конфигурации для определения расширенной логики обработки запросов, формирования конфигурации, динамической генерации ответа, модификации запроса/ответа или быстрого создания заглушек с решением проблем в web-приложениях.В новом выпуске njs устранены проблемы, выявленные в ходе fuzzing-тестирования. Реализована глобальная переменная "process" c параметрами и переменными окружения текущего процесса (process.pid, process.env.HOME и т.п.). Обеспечена возможность записи во все встроенные свойства и метод. Добавлена реализация Array.prototype.fill(). Реализована поддержка предложенного в ECMAScript 5 синтаксиса getter (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...) и setter (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...) для привязки свойства объекта к функции, например:
var o = {a:2};
Object.defineProperty(o, ‘b’, {get:function(){return 2*this.a}});
URL: http://mailman.nginx.org/pipermail/nginx-announce/2019/00024...
Новость: https://www.opennet.ru/opennews/art.shtml?num=50967
Тут пишут, что nginx не нужен уже есть caddy https://engineering.hashnode.com/after-4-years-with-nginx-we...
это у которого реклама в HTTP заголовках и включенная по умолчанию телеметрия?
Нет у него ни рекламы в заголовках, ни телеметрии по дефолту. Реклама была, но когда их в это ткнули они шустро убрали. Телеметрию они предлагают включить, но все в твоих руках
Но предлагают и предлагают... И всё настаивают.
> Но предлагают и предлагают... И всё настаивают.Где настаивают?
curl https://getcaddy.com | bash -s personal http.cache,http.expires,http.ipfilter,http.minify,http.ratelimit,http.realip,http.reauth,tls.dns.cloudflare,tls.dns.digitalocean,tls.dns.vultr
И никакой телеметрии, и никто не настаивает. Не обманывай людей.
Но проект в любом случае странный.
> Тут пишут, что nginx не нужен уже есть caddyСандип Панда рекомендует!
Строишь свой "multi-tenant app (aka SaaS product)"? Счастье есть!
Бесплатно для бузинесов -- просто собери из исходника.
Go[lang] во все поля -- не думай, просто копай!
Вот прям всё ssl-tls A+/100% искарпопки -- не жди, звони прямо сейчас.
сейчас наш ВиПи Раджа Кумар вам позвонит, не покидайте помещения!
Ну дак у него даже в ссылке есть краткое содержание текста:
https://sandeep.dev/how-i-built-a-cdn-for-our-multi-tenant-a... (внимание на последние символы)[сообщение отредактировано модератором]
Nginx сможет заменить только то, что умеет .htaccess искаропки, caddy этого не умеет, а следовательно не нужен.
Да что вы все с этим htaccess-ом заладили.
Единственное, где он нужен - это узкая ниша shared hosting.
> Nginx сможет заменить только то, что умеет .htaccess искаропки, caddy этого не
> умеет, а следовательно не нужен.htaccess нужен только мамкиным крякерам, которые юзают гайды возрастом по 15 лет и не хотят сами ни в чем разбираться. По данным netcarft в июне nginx обогнал наконец-то apache и теперь статистика такова:
Nginx 32.97%
Apache 28.08%
IIS 15.39%Остальные в районе погрешности
тебе осталось угадать, сколько из этих nginx являются безмозглыми фронтендами к тому же самому апачу.
(настроенными такими же безмозглыми экземплярами)
Если ты посмотришь на цифры, то ты увидишь, что nginx стабильно рос вытесняя прежде всего IIS, а не Apache. Вплоть до того, что в прошлом месяце практически совпадает процент отвалившийся у IIS и процент приросший у nginx.А ставить фронтами к апачу давно перестали, это опять же разве что макаки нашедшие инструкции которым по 10 лет делают. nginx с php-fpm работает в разы эффективней дохлого индейца
> А ставить фронтами к апачу давно перестали, это опять же разве что
> макаки нашедшие инструкции которым по 10 лет делают. nginx с php-fpm
> работает в разы эффективней дохлого индейцабоюсь что как раз твои инструкции устарели лет на десять. Да и тогда были написаны кем-то малограмотным.
php-fpm самое больное место во всей конструкции, явных преимуществ по сравнению с apache+mod_php он не имел, во всяком случае, во времена 5.6 (верю что в 7 могли и модуль испортить), и создавал совершенно ненужные проблемы пользователям.Эта схема имела смысл только когда пользователь - ты сам, и никого другого рядом нет, чтобы сэкономить на настройке еще одного сервиса.
А смысл сейчас так делать? Если уж нужен апач, в нем давно есть event mpm.
> А смысл сейчас так делать? Если уж нужен апач, в нем давно
> есть event mpm.боюсь что от замены форков тредами никакого видимого глазу выигрыша получить не удастся - "тут всю систему менять надо".
так в event не треды, там примерно как в nginx - epoll и fsm (не настолько вылизано, конечно)
ну в общем - мерять надо. Что-то мне подсказывает, что с отдачей статики nginx все равно заметно уедет вперед, а с б-мерзким пехепе в этом worker вполне могли вообще не подружиться.
Естественно, как их подружить? Тут будут ровно те же проблемы, что и со встраиванием в nginx.В общем, все так же - только через fastcgi.
Смысл ровно один - htaccess на шаредах.
> В общем, все так же - только через fastcgi.значит, нинужна.
> Смысл ровно один - htaccess на шаредах.htaccess в котором не работают php-специфичные команды вызовет массу приятных и интересных глюков на shared.
впрочем, там еще и itk обычно, поскольку патчить ведро (как мы делали во времена апача 1.3) дураков нет
Оно там и близко не "как в nginx". Оно там только для keep-alive соединений.
> Оно там и близко не "как в nginx". Оно там только для
> keep-alive соединений.а что у нас сегодня НЕ keep-alive?
Хорошо, уточню. Для неактивных keep-alive соединений. Как только поступает запрос, то привет старый добрый апач с отдельными потоками на каждое соединение.
> Хорошо, уточню. Для неактивных keep-alive соединений. Как только поступает запрос,
> то привет старый добрый апач с отдельными потоками на каждое соединение.ну для виндоюзеров это, конечно, трагедия, но в линухе-то fork бесплатен, по идее ничего особо неправильного в такой технологии нет. (и тогда совсем непонятно, а что с пехепе-модулем-то не так?) Но вот дальше там, боюсь, все тот же "старый-добрый", с теми же самыми наслоениями полуработающего tcp в каких-то давно всеми забытых юниксах и с теми же самыми локами.
Буду рад, конечно, ошибиться, поскольку направление развития nginx давно уже мне не по пути.
только от этого он меньше форкаться не стал
апачу уже ничего не поможетот евентовой модели там одно название
Из любопытства держу его на паре личных проектов. Для коммерческих не подходит. Если я приду к клиенту с идеей платить за веб-сервер 25 баксов в месяц, учитывая что сейчас все работает идеально без такой оплаты, то клиент пошлет меня к такой-то матери и я останусь без клиента.
Так что для личных проектов, а так же для всяких веб-разработчиков, которые не в состоянии приготовить nginx он может и подходит, для коммерческого использования никак нет
Про сервер за 25 баксов не понял: он что, такой "производительный"?nginx у меня на ARM-пукалке за 3 евро прекрасно справляется с раздачей статики под "полочку" в 100 mbps. Единственная проблема была с тем, что проца немного не хватало на tls handshakes, но с массовым переходом на http/2 проблемы не стало.
Я тоже не понимаю за что они хотят $25 в месяц.
Как я уже сказал я могу понять его использование для личных проектов и туповатыми веб-девелоперами, примитивный конфиг и https на A+ это удобно. Но в продакшене ему явно не место, тем более за 25 баксов в месяц с сервера.
Ща допилят njs 1.0.0 и перепишут на него сам nginx, видимо
acme из коробки еще не умеет?Мы посидим на божественном Traefik.io
А смысл? acme v2 все равно удобнее с dns-ами (а для wildcard это вообще единственный способ).
А сертификаты он получает святым духом?
Надеюсь, njs в будущем будет способен выпилить nodejs хотя бы в части задач.
Такого не произойдет, во первых V8 разрабатывается умными людьми, а во вторых тут задачи другие.
Надеюсь ты все же перечитаешь доку и поймешь для чего нужен njs.
Ну все. Открыли ящик пандоры - написание своего js интерпретатора.
Получит пропуск
Получит прорусе