The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск nginx 1.17.9 и njs 0.3.9

04.03.2020 08:05

Сформирован выпуск основной ветки nginx 1.17.9, в рамках которой продолжается развитие новых возможностей (в параллельно поддерживаемой стабильной ветке 1.16 вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей).

Основные изменения:

  • Запрещено указание нескольких строк "Host" в заголовке запроса;
  • Исправлена ошибка при которой nginx игнорировал дополнительные строки "Transfer-Encoding" в заголовке запроса;
  • Внесены исправления, предотвращающие утечки сокетов при использовании протокола HTTP/2;
  • Устранён крах (segmentation fault) рабочего процесса, проявляющийся при использовании OCSP stapling;
  • Внесены исправления в модуль ngx_http_mp4_module;
  • Решена проблема в случаях, когда при перенаправлении ошибок с кодом 494 с помощью директивы 'error_page' мог возвращаться ответ с кодом 494 вместо 400;
  • Устранены утечки сокетов при использовании подзапросов в модуле njs и директивы aio.

Дополнительно можно отметить выпуск njs 0.3.9, интерпретатора языка JavaScript для веб-сервера nginx. Интерпретатор njs реализует стандарты ECMAScript и позволяет расширять возможности nginx по обработке запросов с помощью скриптов в конфигурации. Скрипты могут использоваться в файле конфигурации для определения расширенной логики обработки запросов, формирования конфигурации, динамической генерации ответа, модификации запроса/ответа или быстрого создания заглушек с решением проблем в web-приложениях.

В новом выпуске в модуле njs ​​добавлена поддержка режима открепленных запросов в r.subrequest(). Ответы на открепленные подзапросы игнорируются. В отличие от обычных подзапросов, открепленный подзапрос может быть создан внутри обработчика переменной. Также:

  • Добавлен API Promises для модуля "fs";
  • В модуль "fs" добавлены функции access(), symlink(), unlink(), realpath() и подобные;
  • Введены эффективные с точки зрения потребления памяти обычные массивы;
  • Внесены улучшения в lexer;
  • Внесено исправление в сопоставление нативных функций в обратных трассировках (backtraces). следах;
  • Исправлены callback-вызовы в модуле "fs";
  • Внесены исправления в Object.getOwnPropertySymbols();
  • Устранено переполнение буфера динамической памяти в njs_json_append_string();
  • Внесено исправление в encodeURI() и decodeURI() в соответствии со спецификацией;
  • Внесено исправление в Number.prototype.toPrecision();
  • Внесено исправление обработку аргумента пробела в JSON.stringify();
  • Внесено исправление в JSON.stringify() с объектами Number() и String();
  • Обеспечено экранирование символов Unicode в JSON.stringify() в соответствии со спецификацией;
  • Внесено исправление в импорт не родных модулей;
  • Внесено исправление в njs.dump() с экземпляром Date() в контейнере.


  1. Главная ссылка к новости (http://mailman.nginx.org/piper...)
  2. OpenNews: Выпуск сервера приложений NGINX Unit 1.15.0
  3. OpenNews: Выпуск nginx 1.17.8 и njs 0.3.8
  4. OpenNews: Rambler намерен перевести разбирательство с NGINX в гражданско-правовое поле
  5. OpenNews: Релиз nginx 1.16.0
  6. OpenNews: Сделка по покупке NGINX компанией F5 Networks успешно завершена
Автор новости: eRIC
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/52474-nginx
Ключевые слова: nginx, njs
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (83) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, cat666 (ok), 09:34, 04/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Я так понял из новостей, что Рэмблер, несмотря на все заявления, с них не слезает.
     
     
  • 2.2, A.Stahl (ok), 09:40, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А там есть ещё какие-то новости? Что-то давно не слышно было.
     
     
  • 3.3, cat666 (ok), 09:54, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Уголовное дело просто так не закрывается. Новость от 12 февраля.
    "Заместитель главы комитета Госдумы по информационной политике, информационным технологиям и связи Андрей Свинцов (ЛДПР) направил запрос на имя генпрокурора РФ Игоря Краснова с просьбой взять на личный контроль уголовное дело в отношении сооснователей компании Nginx...."
     
     
  • 4.34, Аноним (34), 17:54, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Слезание Рамблера (точнее, Мамута) и прекращение дела никак не связаны.
     
  • 4.51, Lex (??), 00:36, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Но сих пор неясно, откуда такой порыв защитить теперь уже американскую контору( или к разговору о покупке nginx )

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

     
     
  • 5.52, lucentcode (ok), 00:51, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Глава ЛДПР - гражданин Испании. Его сын имеет вид на жительство в США. Думаю, достроить логическую цепочку сами сможете...

    Ну и nginx важен для всей индустрии IT в целом, в том числе и русской. Впрягаться за него имеет смысл всем, кто хоть немного смыслит в IT.

     
     
  • 6.64, Аноним (64), 20:47, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >  Глава ЛДПР - гражданин Испании. Его сын имеет вид на жительство в США. Думаю, достроить логическую цепочку сами сможете...

    Так бы сразу и сказали!
    В западных странах очень жестко относятся к воровству интеллектуальной собственности, в частности, попыткам наёмных сотрудников присвоить то, что они делали в рабочее время, т.е. за зарплату.

    Так что "взять на личный контроль" в данном контексте означает "проследить, чтобы Сысоева покарали".

     
     
  • 7.73, Lex (??), 12:42, 06/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Удивительно, как ловко вы политизируете обычный конторный спор о правах на продукт..
     
  • 5.77, Аноним (77), 17:38, 06/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это очень плохой прецедент для индустрии. Прецедент во многом определит решения судов по схожим делам в будущем.
     
  • 2.4, Аноним (4), 09:56, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Ты думаешь после сидения на бутылке автор не будет Рамблеру ставить палки в колеса?
     
     
  • 3.11, товарищ майор (?), 11:56, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    а кто вам сказал что "после"? Сидя на бутылке - конечно не будет. А команды слезать мы не давали!

     

  • 1.5, Аноним (4), 09:57, 04/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Я бы уж лучше китайскую openresty использовал чем сабжевый njs.
     
     
  • 2.21, Аноним (21), 15:56, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –4 +/
    А с чем связано? Конкурентное преимущество какое-то или просто личное расположение к Китайцам?
    Или лучное отторжение от российских дрязг? Так надо понять почему так и ведь не единая история, а пожалуй национальная идея - отжал спрятал выехал и получил гражданство..
     
     
  • 3.27, Аноним (4), 16:40, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Все что ты сказал плюс неприятие всего что связано с джаваскрипт. Lua подсознательно как то больше ассоциируется с быстрым встроенным простым языком.
     
     
     
    Часть нити удалена модератором

  • 5.32, Аноним (4), 17:42, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Там и ~= вместо != И все равно lua по юзабельности опережает js подделки.
     
     
  • 6.36, Аноним (34), 18:01, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Любой кусок кхм будет лучше, чем JS 8594 Empty string These a... большой текст свёрнут, показать
     
     
  • 7.50, мяя (?), 23:49, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Страшилки для маленьких.
    Это всё чушь если знать про динамическую типизацию и неявное преобразование типов.
    Тем более такой код не будет использоваться в реальной жизни.
    > Only one element has been added!

    Про дырявые массивы не не слышали... А между прочим позволяет огого как в ряде случаев производительность поднять.

     
     
  • 8.61, Аноним (64), 20:35, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Так как более самых распространённых 50 неочевидных ситуаций при приведении типо... текст свёрнут, показать
     
     
  • 9.70, Аноним (70), 03:32, 06/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Разработчики - это существительное множественного числа Когда говоришь о себе... текст свёрнут, показать
     
  • 7.57, Аноним (70), 04:53, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Тоже вспоминаешь npm leftpad?

    > [] + [] → "" // Empty string? These are arrays!

    Особь семейства Cercopithecidæ не читала стандарт языка, но уже имеет ценное мнение о том, как На Самом Деле™ должно работать сложение... массивов? (whatever that means)

     
     
  • 8.58, Moomintroll (ok), 09:35, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Я тоже не читал стандарт, но для меня, как для особи семейства Cercopithecid 23... текст свёрнут, показать
     
     
  • 9.59, Аноним (70), 10:47, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Такой операции, как сложение массивов , не знает ни один язык Есть конкатенаци... большой текст свёрнут, показать
     
     
  • 10.65, Аноним (64), 20:50, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Очевидно, что стандарт JS писал самый упoротый из их представителей ... текст свёрнут, показать
     
     
  • 11.69, Аноним (70), 03:28, 06/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Мнение представителя семейства Cercopithecid 230 можно оставить без внимания в... текст свёрнут, показать
     
  • 10.78, Аноним (78), 15:49, 08/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это конкатенация Результат - число не массив Правильная хотелка - сумма двух в... большой текст свёрнут, показать
     
  • 8.67, Аноним (67), 00:41, 06/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А сумма двумерных массивов создаст двумерную строку ... текст свёрнут, показать
     
  • 7.74, Аноним2 (?), 13:17, 06/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вот, вроде
    - программирование
    - алгоритмы
    - математические выражения...
    Ожидается присутствие хоть какой-то логики
    Особенно понравилось i+1 и i-1 :)
     
  • 6.42, Аноним (-), 20:12, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >  js подделки.

    Если они подделки, то я прямо боюсь спросить, что же оригинал?!

     
  • 5.35, Аноним (34), 17:58, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Индексация массивов начинается с 1 а не 0. Это все что вам нужно знать про это недоразумение.

    Мнение хипстеров особого интереса не представляет.
    FORTRAN (since 1957) индексирует с единицы. Появившийся на 12 лет позже C ввёл костыль с индексацией от нуля в основном для синтаксического сахарка с указателями. В скриптовом языке, естественно, это смысла не имеет.

     
     
  • 6.43, Аноним (-), 20:17, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Мнение хипстеров особого интереса не представляет.

    Попробуй без этих "хипстеров" с их сями хотя-бы свой компьютер загрузить, умник :)

     
     
  • 7.44, Аноним (64), 20:42, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    У меня не компьютер, у меня ЭВМ. Тёплая, ламповая.
     
     
  • 8.55, Аноним (55), 01:25, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    С теплой и ламповой на опеннете не больно поумничаешь P ... текст свёрнут, показать
     
  • 7.47, Аноним (67), 21:03, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Т.е. если нумерация массива начнется с 1, то компьютер не загрузится?
    IBM/360 об  этом не знала :)
     
  • 7.48, Аноним84701 (ok), 21:12, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Если они не знают, почему в сях индексация начинается с 0, то их си - разве ч... большой текст свёрнут, показать
     
     
  • 8.54, Аноним (54), 01:22, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Может, потому что память начинается с адреса 0 Вон Cortex M при power-up пер... текст свёрнут, показать
     
     
  • 9.62, Аноним (64), 20:38, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Итак, вы умеет пользоваться гуглом Тогда вы сможете сделать и второй шаг 8212... текст свёрнут, показать
     
     
  • 10.68, Аноним84701 (ok), 00:51, 06/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Скритовые ЯП тут особо ни при чем Массивы сами по себе уже абстракция foo i -... текст свёрнут, показать
     
     
  • 11.80, Аноним (80), 23:33, 08/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Память как таковая, в общем то тоже абстракция На уровне физики чип RAM бывает ... большой текст свёрнут, показать
     
     
  • 12.82, Аноним84701 (ok), 01:31, 09/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это все очень интересно, но на причину почему индексация массивов с 0 - более ... большой текст свёрнут, показать
     
     
  • 13.83, Аноним (-), 01:25, 10/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Довольно криво считать адреса с нуля а массивы с единицы Например, в сях отличи... большой текст свёрнут, показать
     
  • 10.79, Аноним (80), 23:29, 08/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Я еще и памятью умею пользоваться Потому что поделки для вебмакак, не понимающи... текст свёрнут, показать
     

  • 1.6, Аноним (6), 10:04, 04/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    На Rust написали njs, или опять будет UB во все щели?
     
     
  • 2.7, Аноним (6), 10:05, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    В вашем Rust неопределённого поведения не меньше чем в C++. Пруфы https://doc.rust-lang.org/reference/behavior-considered-undefined.html
     
     
  • 3.10, Анатолий (??), 11:39, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > В вашем Rust неопределённого поведения не меньше чем в C++.

    Так это unsafe, для это часть кода маркируется unsafe чтобы сразу показать
    где баги. В C++ же весь код unsafe.

     
     
  • 4.16, Аноним (-), 13:21, 04/03/2020 Скрыто ботом-модератором     [к модератору]
  • –3 +/
     
  • 4.26, asdasd (?), 16:14, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Включите -Wall -Wextra -Werror и unsafe обертывайте в #pragma GCC diagnostic.
     
  • 4.29, Аноним (29), 17:21, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Уже успел написать что-то на своих «не-unfase» if-ах?
     
  • 4.31, Аноним (31), 17:38, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >> В C++ же весь код unsafe.

    Диванные экспертам лучше видней. А то, что в С++ возможно писать полностью safe код, это никто во внимание не берёт

     
     
  • 5.37, Аноним (34), 18:10, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Писать-то на крастах можно, а вот читать...
    Впрочем, у Rust та же проблема. Теперь, встречая что-то наподобие !@#$%^&*(), думаешь — это завуалированное ругательство, следствие чистки клавиатуры, или фрагмент кода на Rust?
     
  • 4.39, Аноним (6), 19:51, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Прочитайте документацию Rust по приведённой выше ссылке. UB в Rust не только в unsafe блоках
     
  • 2.15, Аноним (-), 13:20, 04/03/2020 Скрыто ботом-модератором     [к модератору]
  • –3 +/
     
  • 2.22, Аноним (21), 15:58, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Сложно по ссылке нажать чистый канонический С.

    Вот какой-то файл там у них открыл  http://hg.nginx.org/njs/rev/65f4b11e3302

    Блин не пойму чего они все еще на меркуриале?

     
     
  • 3.56, Аноним (55), 01:27, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Блин не пойму чего они все еще на меркуриале?

    На гитхабе зеркало есть, но они таки из тех кто любит ссать против ветра. В принципе никто бы не возражал, если б не запах...

     
     
  • 4.63, Аноним (64), 20:39, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Поддержка второго питона в 2020 году — крайне увлекательное занятие. Если хоть немного разума осталось — избавятся от ртути.
     
  • 2.84, Аноним (-), 01:28, 10/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > На Rust написали njs, или опять будет UB во все щели?

    Сначала пусть растоманы перестанут быть театром одного актера с жестким вендорлоком на 1 комерса, чтоли.

     

  • 1.8, nelson (??), 11:03, 04/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >> Интерпретатор njs реализует стандарты ECMAScript и позволяет расширять возможности nginx по обработке запросов с помощью скриптов в конфигурации.

    лучше бы lua или tcl прикрутили

     
     
  • 2.9, Аноним (4), 11:34, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Lua уже прикручена и называется openresty.
     

  • 1.12, пох. (?), 12:01, 04/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Кто-нибудь, кстати, намекните там Максу, что плешь немодно, и жить ему осталось месяц, можно в ngx_http_mp4_module уже ничего не чинить.

     
     
  • 2.17, Аноним (17), 14:12, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    mp4 это не только flash, это еще и куча всяких десктопных и мобильных клиентов вокруг систем видеонаблюдения и подобного.
     
  • 2.40, Аноним (-), 20:05, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А что, он не умеет грузить MP4 "просто браузеру"? Ну тады ему амба. Впрочем, нафига он нужен, при наличии dash...
     
     
  • 3.49, пох. (?), 22:32, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    а зачем ему это уметь, "просто браузер" и так его загружает, как обычный файл.

    Это был грязный хак для флэша, который был настолько суперстар, что не умел Range: - и так и не умеет их до конца своей жизни.
    Поэтому когда юзверь тыкал мышкой в слайдер, чтобы пропустить скучный диалог горничной с водопроводчиком, приделанный к слайдеру скрипт просто давал команду загрузить другой файл, вида url://somesite/somepron.mp4?start=100 - а этот модуль парсит параметр и отсчитывает нужное число секунд (по неведомым причинам, старт mp4 отсчитывается в секундах)

    Браузер c html5 просто запросит другой range с того же самого файла, и сразу в байтах.

     
     
  • 4.53, Аноним (-), 01:09, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > "просто браузер" и так его загружает, как обычный файл.

    Этот фокус не особо работает с "безразмерным потоком" (трансляция с камеры).

    > Браузер c html5 просто запросит другой range с того же самого файла, и сразу в байтах.

    Более вероятно что он запросит другой chunk :). Правда модуль нжинкса для этого все же не надо.

     
     
  • 5.71, пох. (?), 10:53, 06/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Этот фокус не особо работает с "безразмерным потоком" (трансляция с камеры).

    дык а какой фокус с ним работает-то?

    Где у него "старт", и кто тебе будет хранить произвольный фрагмент при прямой трансляции? Так что рисуем grayed slider и перестаем обрабатывать события от него, делов...


    В модуле, правда, еще были рейтлимиты - те что опять же по содержимому файла подстраивались, а не отбалдово-примерно руками настраивать каждый раз. Но они только в коммерческой версии, и вряд ли эта фича использовалась хоть кем, кроме единственного коммерческого клиента, которому десять лет назад ее запилили под заказ.

     
     
  • 6.81, Аноним (-), 00:09, 09/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Дык посмотри на dash например Сделали отдельно хидеры потоков и потом в чанки э... большой текст свёрнут, показать
     
  • 5.76, Аноним (76), 15:23, 06/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    На трансляция на сайтов телеканалов часто можно поскролить видео.
     

  • 1.13, Аноним (13), 13:12, 04/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Самое главное, копирайты-то поправили на Рамблеровские или нет?
     
     
  • 2.19, Аноним (4), 15:12, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Нет простой бумажный конверт в адрес людей из компании Р.р  с уе  решил все вопросы.
     
  • 2.23, Аноним (21), 16:05, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Уроды долго не живут. Так что инвесторы от токсичных активов уже избавились,
    а компанию разорят и спишут как банкрота скорее всего скоро, а основная статья
    доходов у них кинотеатр Okko это вообще смешно. Примерно так же как гамбургеры
    в отделениях банков.
     
     
  • 3.28, Аноним (4), 16:55, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Рамблер это СМИ, а не IT-компания. Чего стоит только их решение целый год не покупать сервера и это на заре развития поиска.
     
     
  • 4.46, Mail23842 (?), 20:47, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Вангую, что  это было решение солнцеликого гуру Ашманова.
     
     
  • 5.60, Michael Shigorin с гексагорыныча (?), 17:28, 05/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Поскольку мне лень сейчас перечитывать ради Вас http://www.ashmanov.com/education/articles/zhizn-vnutri-puzyrya/ -- давайте Вы сами перечитаете, а потом или расскажете, где он соврал, или (с большой вероятностью) станете искать щётку, чтобы отчистить от следов лужи свою одёжку.
     

  • 1.14, Аноним (14), 13:19, 04/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ищу single-header http-сервер на С99.
     
     
  • 2.20, Аноним (4), 15:17, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    https://github.com/tom-seddon/yhs
     
     
  • 3.24, Аноним (21), 16:05, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Спасибо добрый человек.
     
  • 2.25, Аноним (21), 16:06, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А чем тебе libevent не подходит там вроде был HTTP сервер и во всех дистрибутивах можно найти.
     
     
  • 3.41, Аноним (-), 20:07, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Может тем что это _не_ http server? А так по хорошему lwan.ws советую посмотреть. Он, конечно, не single header, но таки шустрый, с удобным апи, и вообще, с ним вы сможете показывать go'пникам что умеете в микросервисы и тому подобное совсем не хуже :)
     

  • 1.18, Аноним (18), 14:53, 04/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >Запрещено указание нескольких строк "Host" в заголовке запроса;

    это чтобы обходить ДПИ было сложнее?

     
     
  • 2.33, Аноним (4), 17:46, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Конечно. Следователь в СИЗО лично коммит писал.
     
  • 2.38, Аноним (34), 18:14, 04/03/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > это чтобы обходить ДПИ было сложнее?

    Ага, специальный прокси HelloDPI подставляет в каждый запрос заголовки Host со всеми запрещенными хостнеймами, которые есть в реестре. В результате человек жалуется, что клятi москали весь интернет побанили, а у всех остальных всё работает.

     

  • 1.66, Аноним (66), 22:02, 05/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А выпуск Сысоева уже состоялся?
     
     
  • 2.72, товарищ майор (?), 10:55, 06/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    доброе у вас сердце, Штирлиц. Нет, пусть пока посидит.

     
  • 2.75, Аноним (76), 15:15, 06/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Отпустили но дело не закрыли.
     

  • 1.85, Аноним (85), 15:34, 10/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Интерпретатор njs реализует стандарты ECMAScript и позволяет

    Очень хотим етот интерпретатор как standalone решение для кастомизации нашего решения. Можно как-то его отдельной библиотекой сделать?

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру