Доступен (http://www.mail-archive.com/announce@httpd.apache.org/m...) релиз HTTP-сервера Apache 2.4.26 (http://httpd.apache.org/), в котором представлено 63 изменения (http://www.apache.org/dist/httpd/CHANGES_2.4.26), 22 из которых связаны с исправлениями в модуле mod_http2.Из изменений (http://www.apache.org/dist/httpd/CHANGES_2.4.26) можно отметить:
- C модуля mod_http2 (http://httpd.apache.org/docs/current/mod/mod_http2.html) снята метка экспериментальной разработки, реализация протокола HTTP/2 отныне признана готовой для повсеместного применения;
- Добавлен новый модуль mod_brotli (http://httpd.apache.org/docs/current/mod/mod_brotli.html) для сжатия с использованием алгоритма Brotli (https://www.opennet.me/opennews/art.shtml?num=43006) (RFC 7932);
- В файле конфигурации обеспечено выполнение вложенных блоков If/ElseIf/Else;
- В mod_lua добавлена поддержка Lua 5.3;
- Изменено поведение mod_rewrite: если подстановка является полным URL, а схема/хост/порт совпадают с текущим виртуальным хостом, то компонент пути в URL больше не интерпретируется как локальны путь, если он присутствует в файловой системе. Для возвращения старого поведения добавлена опция "RewriteOption LegacyPrefixDocRoot";
- В mod_rewrite добавлен флаг 'BNP' (backreferences-no-plus), включающий замену пробелов в обратных ссылках RewriteRule на "%20" вместо "+";
- В mod_rewrite добавлена возможность ограничения экранирования определённых символов через указание их в флаге "B";
- В mod_env добавлен вывод предупреждения для директивы 'SetEnv', если в имени переменной окружения указан символ '=';
- В mod_proxy_http2 добавлена поддержка заголовков Reverse Proxy Request;
- В mod_proxy_fcgi добавлена директива ProxyFCGISetEnvIf для изменения переменных окружения CGI на стадии до вызова FastCGI;- В mod_proxy разрешено применение переменной окружения "no-proxy" в качестве альтернативы выражению "ProxyPass /path !";
- В mod_proxy_fcgi возвращено старое поведение (2.4.20), оставляющее префикс "proxy:fcgi://" в переменной окружения SCRIPT_FILENAME;
- В mod_proxy_http2 добавлена директива ProxyPreserverHost;
- В mod_proxy_wstunnel добавлен параметр "upgrade", разрешающий обновление до другого протокола;- Проведена работа по увеличению производительности, качества буферизации и динамического регулирования потоком в mod_http2;
- В mod_http2 директива MaxKeepAliveRequests теперь ограничивает число повторных использований slave-соединений;
- В mod_http2 добавлена поддержка директивы MergeTrailers;- В mod_autoindex добавлена опция "IndexOptions UseOldDateFormat", позволяющая использовать формат Last Modified как в Apache 2.2;
- В парсер выражений добавлена подстановка %{REMOTE_PORT};
- Во вложенных SSI-выражениях подстановка %{DOCUMENT_URI} теперь всегда указывает на URI оригинального запроса, а не на URI вложенного документа;- В mod_ssl добавлена поддержка OpenSSL 1.1.0;
- Устранено 5 уязвимостей (https://httpd.apache.org/security/vulnerabilities_24.html):- CVE-2017-3167 - обход аутентификации при использовании ap_get_basic_auth_pw() в сторонних модулях;
- CVE-2017-3169 - инициирование краха через отправку запроса HTTPS из-за разыменования нулевого указателя в mod_ssl;
- CVE-2017-7659 - инициирование краха через отправку запроса HTTP/2 из-за разыменования нулевого указателя в mod_http2;
- CVE-2017-7668 - чтение вне границ буфера в функции ap_find_token() может привести к краху при обработке специально оформленных заголовков запроса;- CVE-2017-7679 - чтение вне границ буфера в mod_mime может привести к чтению байта из области за пределами выделенного буфера при обработке специально оформленного заголовка Content-Type. Интересно, что о проблеме было сообщено ещё в ноябре 2015 года, а исправление внесено только сейчас.
URL: http://www.mail-archive.com/announce@httpd.apache.org/m...
Новость: http://www.opennet.me/opennews/art.shtml?num=46741
Когда уже Brotli добавят в nginx в базовый набор модулей? Это, судя по всему, требует более приличного кода в https://github.com/google/ngx_brotli , так что расти есть куда, но уделить этому сжатию внимание было бы минимум хорошо.Раз уже Apache научился (а его реже на фронтэнд ставят)!
Лучше не brotli, а zstd - жмёт лучше.
> Когда уже Brotli добавят в nginx в базовый набор модулей?да, нам так не хватает еще дыр в нем!
Вы гугль? Может быть - вы факинбук? Или может вы хоститесь в Воронеже и по сей день платите за траффик покилобайтно? Зачем и кому еще может быть потребно это очередное "ненужно"? gzip изобрели в 2000х, когда были дохлые каналы и избытки процессорной мощности на серверах (они упирались больше в память). С тех пор все, кому не хватало - просто его отключили нах, и живут себе счастливо. Поэтому никто и не хочет допиливать новый ненужно-модуль ненужно-сжатия, раз он даже гуглю не особо пригодился. Какой бы распрекрасный ни был в нем алгоритм.
> так что расти есть куда, но уделить этому сжатию внимание было бы минимум хорошо.
Расти есть куда - в первую очередь для поддержки user-controllable config (то есть замены
.htaccess - главное, почему по сей день не выброшен в тoпку апач)
Но вместо этого получите новых дыр в http/2 (тоже никому, по сути, не уперся кроме гуглефакбуков, но те, хотя бы, платят за свои хотелки)
> Или может вы хоститесь в Воронеже и по сей день платите за траффик покилобайтно?Полегче дружище. Сжатие штука нужная даже на хороших каналах, потому как выигрыш по времени может быть даже с учётом запаковки-распаковки. Опять же жабаскриптописатели тоже в курсе, что "каналы у всех хорошие" и стесняются всё меньше, так что сжатие само по себе (безотносительно Brotli) штука годная. Или уж во всяком случае - имеющая свою target group :)
> Сжатие штука нужная даже на хороших каналах, потому как выигрыш по временида нет никакого "выигрыша по времени" в современной сети. Все "выигрыши" остались во временах adsl модемов и 64k каналов c потерями 30%.
Если у тебя сss'ы (и тем более скрипты) такие, что им от сжатия наступает какой-то выигрыш, который способен физически заметить клиент - можешь быть уверен, что весь "выигрыш" сожрет переваривание этого очередного шедевра уеб-дизигна клиентом (причем даже эфемерного выигрыша для высоконагруженных проектов не будет - тот клиент, пока переваривает проглоченное, даже сокет освободить не потрудится - вдруг еще нужен). А сетевой карте в общем-то пофиг, что один пакет выплюнуть, что четыре, ты это даже не отличишь - основные потери идут на установление tcp сессии. Поэтому и наступает на нас уродливый http/2.> Опять же жабаскриптописатели тоже в курсе, что "каналы у всех хорошие" и стесняются всё
> меньшеэто ты как раз зря - они уже изобрели уебассемблер, который практически не пакуется. И сpаный канвас, чтоб рисовать графические элементы (которые исходно тоже не пакуются) прямо на пользователе, а не передавать их по сети. Осталось только css'ы еще начать делать бинарными, вот щастье-то и настанет (полагаю, доживем).
собственно, плейн-текстового контента, которому был когда-то выигрыш от сжатия/разжатия, все меньше и меньше (и не в процентном отношении даже!)
А уж на фоне картинок, шрифтов(!) и всей прочей ерунды...Добавь к этому еще и ssl (который вообще сводит всю пользу от lightweight-сжатия к нулю), трудами гугля уже повсеместный (опять с кучей потерь на сессию, теперь уже внутри tcp)
А для сервера настоящая катастрофа, вызванная жабаскриптерами, не в самих скриптах, а в аяксо-пинго-gl контенте, который опять же жрет дорогие сокеты самым неоптимальным образом.
И это щастье с нами уже тоже навсегда.
> остались во временахДружище, съезди за город, на природу, проветрись, зайди отттуда на какой-нибудь сайт.
> Дружище, съезди за город, на природу, проветрись, зайди отттуда на какой-нибудь сайт.съездил, зашел - вы таки не поверите, но графического и скриптового контента vs текста ровно столько же и за городом ;-) А теперь посчитайте, сколько у того втентакля наприродных пользователей, какой ему от них прок, в пересчете на рекламные клики, которых они не делают потому что "интернет дорогой", и долго ли в этом свете еще проживет (недо)мобильная версия.
Причем если отъехать не в сторону условного Воронежа, а чуть подальше, то, внезапно, в этом подальше снова появляется вполне себе 4G. А поскольку они там опоздали в развитии, cоответственно, нагрянул он прямо сразу, почти без промежуточных wap/gprs/edge остановок - очень занятно было наблюдать, как за пять лет в "нашей" деревне и соседнем городишке пожрал всех - начиная с adsl'щиков и заканчивая мультисервисниками.
>> ...втентакля ...Забавно что в треде про оптимизацию вы указали ресурс который очень хорошо оптимизирован под плохую связь через мобильник, а в мобиольной версии так и подавно, тут нужно было рукалицо и синус указываать...
> Осталось только css'ы еще начать делать бинарными, вот щастье-то и настанет (полагаю, доживем).А что вы таки имеете против бинарных протоколов передачи данных? Нет, я конечно *уверен* что web-мартышки реализуют это как обычно, так что без ещё большей боли будет невозможно. Но в целом если подходить системно, то лучше бы по сети гонять бинарные данные сразу готовые к интерпретации, а не текстовые портянки которые постоянно нужно парсить, на что при наличии быстрого интернета тратится времени гораздо больше чем на собственно загрузку данных (вплоть до 1-2 секунд на страницу).
> быть уверен, что весь "выигрыш" сожрет переваривание этого очередного шедевра уеб-дизигна клиентомэто как говорится уже совсем другой вопрос.
> это ты как раз зря - они уже изобрели уебассемблер, который практически
> не пакуется. И сpаный канвас, чтоб рисовать графические элементы (которые исходно
> тоже не пакуются) прямо на пользователе, а не передавать их по
> сети. Осталось только css'ы еще начать делать бинарными, вот щастье-то и
> настанет (полагаю, доживем).как-то так, да. всё дело ползёт к запуску приложений на твоей машине, а не отрисовке гипертекста.
> И это щастье с нами уже тоже навсегда.
ну, скажем так, надолго. до приложений.
GPRS/EDGE? Не, не слышал
И опять же, в Воронеже всё хорошо с Интернетом.
> И опять же, в Воронеже всё хорошо с Интернетом.ну-ка, ну-ка, почем у вас _хостинг_ (аренда/колло) без учета траффика или с разумными лимитами, хотя бы пару терабайт per port ? (и как там с сохранением полосы хотя бы до MSK-IX?)
С лайками вконтактега-то да, хорошо, но за это спасибо сотовым операторам скажи, которые у нас, к счастью, федеральные.сжатие-то - оно актуально (хотя бы в теории) на сервере, клиент никаких терабайтов _сжимаемых_ данных не качает - а твое порно не сжимабельно.
Меня постоянно поражает ваша феерическая самоуверенность в том что вы лучше всех знаете всё, в частности то что нужно другим людям. Вы часом не архитектором мира работаете?Но таки как выше намекнули - в наши времена распространился мобильный интернет, и что характерно его всё больше и больше. И там сжатие на клиенте иногда таки имеет смысл. Например если ответ со сжатием пролезает в 1 пакет, а без в 4, то разницу уже можно начать чувствовать.
Дышите глубже и поверьте мне на слово - вам всё-таки не всегда всё известно лучше чем остальным.
> Меня постоянно поражает ваша феерическая самоуверенность в том что вы лучше всехто, что вам кажется самоуверенностью - на самом деле просто опыт. Чуть пошире вашего.
> Но таки как выше намекнули - в наши времена распространился мобильный интернет,
я не знаю, куда там у вас в ваши времена он распространился, и что это за времена, дорогой агент рептилоидов, а на планете Земля к концу второго десятилетия XXI века "мобильный интернет" как отдельная разновидность среды передачи данных, наоборот, по сути кончился. Остался один, просто интернет - как не было никакого отдельного "интернета dialup", "интернета atm", "интернета ethernet".
> и что характерно его всё больше и больше. И там сжатие
> на клиенте иногда таки имеет смысл. Например если ответ со сжатием
> пролезает в 1 пакет, а без в 4, то разницу ужени малейшего. Ответ что со сжатием, что без сжатия, состоит из десятков (а то и сотен) мегабайт графического контента и сотен килобайт тормозных скриптов. И все это дает куда большую нагрузку на процессорную/графическую мощность пацанской лопаты, чем на ее data-тракт.
У нас текущий, поддерживаемый уже коммерческим железом стандарт - 300mb peak rate, какие вы там отдельные пакеты собрались разбирать? У вас десктоп-то точно-точно на гигабите (я не про домашний нас, нет, я про линк к еще нескачанным котикам, сиcькам и пиcькам)?Вот мобильный интернет как представление данных - это да, это серьезно. Да-да, я о "приложениях" вместо браузера. Внутри, если что, все тот же http(s). И те же сотни мег порнокартинок в нем. А вот скриптов, стилей и прочего, что могло бы сжиматься - еще поубавлено, переносом в код "приложения". И что сжимать-то будем - "Васе и еще get_from_binary_stream(off 0x52ae9) нравится ЭТО" ? Клавиатуры мабил не очень предназначены для длинных телег.
> а на планете Земля к концу второго десятилетия XXI века "мобильный интернет" как отдельная разновидность среды передачи данных, наоборот, по сути кончилсяВашими бы устами, да... Гхм... Я про последнюю милю если что. А там разница весьма ощутимая по прежнему.
Но впрочем, судя по вашей фиксации на порно/cиcьках/письках, и очень большому стремлению сыпать "умными словами" вплоть до периодических противоречий самому себе, я думаю что-то обсуждать бесполезно. Вы похожи на человека который хочет что бы все-все-все вокруг поверили в вашу опупительную крутоту, что вероятно должно заменить вам что-то явно недостающее в жизни (уж не знаю что и не нужно додумывать за меня).
> то, что вам кажется самоуверенностью - на самом деле просто опыт. Чуть
> пошире вашего.ну давай друг, канал IPVPN от ростелека, порядка миллиона рублей в год, 300 мегабит.
без сжатия трафика на 500 мегабит в секунду, т.е. нужно платить еще миллион рублей в год.
со сжатием - на 250 мегабит в секунду.
умный вы наш опытный, пишите свои комменты
http://www.opennet.me/openforum/vsluhforumID3/111554.html#2
Ну скажите что я не прав? :-)
Да пожалуйста. Ты не прав.
Спасибо, Друк! :)
А демьян теперь на 5 лет с протухшим Индейцем. У которого главная фишка HTTP2 в продакшен :( Про ЫнжЫнгз в курсе :-) Но осадочек .... :)
Кому нужен Apache, когда есть nginx?
А кому нужен ты?
Кому он нужен, когда есть Go и Java со встроенными серверами.
ну мне нужен. потому как жингс не умеет в cgi из коробки/без костылей. а у нас крутится легаси софт, который написан на СИшке под cgi и никто его переписывать не будет.
thttpd бэкэндом и заб{ыи}ть ... :)
когда последний раз его пробовал (в 2003 году), он только 1 приложение выполнял одновременно. думаю сейчас в этом плане не сильно изменилось :)
Ну если у тебя 100500 cgi то вам по любому на стандартной, из коробки, конфигурации не уползти. Будете и собирать и тюнить лапками.
А для случая "а вот тут у меня Ы-фейс печати справки №18 обр. 1973г" - самоё оно :)
где-то в 6-7 классе будете проходить то, что есть не только wordpress, а ещё куча всякого legasy-дерьма (и не только), которое прекрасно работает с индейцем и не работает с php-fpm
А кроме легаси? Серьезно, интересны юзкейсы когда апач предпочтительнее чем нжинкс.
Например, если поотключать ненужные модули, .htaccess, может ли апач быть сопоставим по потреблению ресурсов с нжинксом?
> А кроме легаси? Серьезно, интересны юзкейсы когда апач предпочтительнее чем нжинкс.Кроме .htaccess?
Какие-то очень редкие модули к апачу, которые есть только к апачу.
Правда, если они нужны, они постепенно появляются и для nginx.Например, ntlm авторизация - там с ней сложность, что авторизация работает в рамках одного соединения.
Раньше её мог только apache, потом появился модуль к nginx.> Например, если поотключать ненужные модули, .htaccess, может ли апач быть сопоставим по
> потреблению ресурсов с нжинксом?Нет.
Но, по хорошему, вам же не только ресурсы, но и скорость нужна.
Так вот, если в apache все отрубить, то... тоже нет :)
Меньше пей смузи. Нгинкс разве что прокси для http\s годное и ради lua, но маркетинг его убивает в последние годы.
В остальном узкоспециальные вещи в ходу, это у взрослых.
Лично мне в nginx не хватает server-status апача.
Чтобы там не говорили, про то, что статус нужно смотреть у бекенда - бред все это. Я хочу иметь возможность увидеть каждый конкретный запрос, который сейчас обрабатывается, а не общую статистику. А такой возможности почему-то нет даже у платного модуля.
Упс, куда-то не в ту ветку написал... Сори...
Это желание у тебя быстро пройдет при 10к+.
> Это желание у тебя быстро пройдет при 10к+.есть желание или его нет пофиг. у меня 200К+ соединений, но при этом находятся уникумы, которые запрос построят таким образом, что и не поймешь почему не работает. а это еще все, что клиент не может даже свой IP адрес сказать. только логин приложения.
вот тогда и будешь его каждый запрос выцеплять. НО! это делается не вручную, а с помощью софта целенаправленного
ОМФГ. На какойм то этапе жизни ты узнаешь о существовании tcpdump и ему подобных ...
Это будет ШОК! Ты даже смузи пить не сможешь!
Ну а далее Лео - зависит от того какого цвета таблетку ты выберешь :-)))))
> ОМФГ. На какойм то этапе жизни ты узнаешь о существовании tcpdump и
> ему подобных ...
> Это будет ШОК! Ты даже смузи пить не сможешь!
> Ну а далее Лео - зависит от того какого цвета таблетку ты
> выберешь :-)))))вы наверное просто не внимательно читали мой пост. входных данных никаких, только логин пользователя.