OpenNews: Релиз http-сервера nginx 1.6.0 Печать
24.04.14 16:33

После года разработки представлена новая стабильная ветка высокопроизводительного HTTP-сервера nginx 1.6.0, которая вобрала в себя изменения, накопленные в рамках основной ветки 1.5.x. В дальнейшем все изменения в стабильной ветке 1.6 будут связаны с устранением серьёзных ошибок и уязвимостей. Одновременно сформирована основная ветка nginx 1.7, в рамках которой будет продолжено развитие новых возможностей. Для обычных пользователей, у которых нет задачи обеспечить совместимость со сторонними модулями, рекомендуется использовать основную ветку, на базе которой раз в три месяца формируются выпуски коммерческого продукта Nginx Plus.

В соответствии с апрельским отчетом компании Netcraft nginx используется на 14.22% всех активных сайтов (год назад 12.91%), что соответствует второму месту по популярности в данной категории (доля Apache соответствует 52.44%, а Microsoft IIS - 11.08%). Доля nginx среди всех сайтов составляет 15.25% (год назад 14.81%), среди миллиона самых посещаемых сайтов в мире - 17.82% (год назад 12.96%). В настоящее время под управлением nginx работает около 146.2 млн сайтов (год назад 96.1 млн). По данным W3Techs 20.4% из миллиона самых посещаемых сайтов в мире используют nginx, в апреле прошлого года этот показатель составлял 16.1%. В России nginx используется на 68.6% самых посещаемых сайтов (год назад - 66.3%).

Из улучшений, добавленных в процессе формирования основной ветки 1.5.x, можно отметить:

  • Новый модуль ngx_http_auth_request_module, для организации авторизации клиента на основании результата запроса по определённому URI (например, при успешной авторизации в другой директории);
  • В модуле ngx_http_spdy_module добавлена поддержка протокола SPDY 3.1. Для ограничения скорости передачи ответов клиенту в SPDY-соединениях теперь допускается использовать директиву limit_rate;
  • В модуль ngx_http_proxy_module добавлена возможность подтверждения корректности содержимого просроченных элементов кэша при помощи условных запросов с полем заголовка If-Modified-Since;
  • Новые переменные:
    • $ssl_session_reused - возвращает "r", если сессия была использована повторно;
    • $proxy_protocol_addr - адрес клиента, полученный из заголовка протокола PROXY;
  • Новые директивы:
    • ngx_http_ssi_module: ssi_last_modified, sub_filter_last_modified и xslt_last_modified для сохранения в поле заголовка Last-Modified исходного ответа во время обработки SSI;
    • ngx_http_fastcgi_module: fastcgi_buffering для управления буферизацией ответов FastCGI-сервера;
    • proxy_cache_revalidate, fastcgi_cache_revalidate, scgi_cache_revalidate и uwsgi_cache_revalidate для ревалидации просроченных элементов кэша при помощи условных запросов с полем заголовка If-Modified-Since;
    • ngx_http_ssl_module: ssl_buffer_size (размер буфера, используемого при отправке данных), ssl_session_ticket_key, ssl_session_tickets (возобновление сессий при помощи TLS session tickets);
    • ngx_http_proxy_module: proxy_ssl_protocols и proxy_ssl_ciphers (разрешает указанные протоколы и шифры для запросов к проксируемому HTTPS-серверу);
    • ngx_http_spdy_module: spdy_chunk_size (максимальный размер частей, на которые будет разделяться тело ответа);
  • Возможность использования нескольких директив error_log;
  • В директивы allow и deny добавлена поддержка unix domain сокетов;
  • В директиву listen добавлена поддержка параметра fastopen;
  • В директивы proxy_next_upstream, fastcgi_next_upstream, scgi_next_upstream и uwsgi_next_upstream добавлена поддержка параметра http_403;
  • Директива disable_symlinks теперь использует O_PATH в Linux;
  • При использовании длинных цепочек сертификатов задействована оптимизация SSL handshake;
  • В почтовый прокси-сервер добавлена поддержка SMTP pipelining;
  • В resolver добавлена поддержка IPv6;
  • В секцию contrib добавлены скрипты для подсветки синтаксиса в vim
  • В модуль ngx_http_uwsgi_module добавлена поддержка SSL;
  • В модуле ngx_http_mp4_module обеспечен пропуск дорожек, имеющих меньшую длину, чем запрошенная перемотка. Обеспечена поддержка byte ranges и аргумента end;
  • В директивы listen и real_ip_header добавлен параметр proxy_protocol;
  • Поддержка byte ranges при сохранении ответов в кэш.

Новшества, представленные в выпуске nginx 1.7.0:

  • Поддержка верификации SSL-сертификатов бэкендов;
  • Поддержка SNI (Server Name Indication, позволяет обеспечить доступ через шифрованное соединение к виртуальным хостам на одном IP) при работе с бэкендами по SSL;
  • Новая переменная $ssl_server_name.
  • Возможность использования параметра "if" в директиве access_log.
  1. Главная ссылка к новости (http://mailman.nginx.org/pipermail/nginx...)
  2. OpenNews: Обновление nginx 1.4.7 и 1.5.12 с устранением опасной уязвимости в реализации SPDY
  3. OpenNews: Обновление nginx 1.4.4 с устранением уязвимости
  4. OpenNews: Проект Nginx получил инвестиции в размере 10 млн долларов
  5. OpenNews: Nginx выпускает коммерческую версию - Nginx Plus
  6. OpenNews: Релиз http-сервера nginx 1.4.0
Тип: Программы
Ключевые слова: nginx, http, (найти похожие документы)
При перепечатке указание ссылки на opennet.ru обязательно
Реклама
id=adv>
  1.1, steven_w, 19:56, 24/04/2014 [ответить] [смотреть все] +2 +/
Ну и комбайн, скоро апач догонит.
 
  2.2, Аноним, 20:12, 24/04/2014 [^] [ответить] [смотреть все] [показать ветку] –1 +/
 
  3.3, Аноним, 20:17, 24/04/2014 [^] [ответить] [смотреть все]  +3 +/
 
  4.14, rob pike, 23:09, 24/04/2014 [^] [ответить] [смотреть все]  –1 +/
Ему уже ничего не надо.
 
 
 
Часть нити удалена модератором

6.22, rob pike, 01:21, 25/04/2014 [ответить] [смотреть все]  
+1 +/
Я бы с большим интересом выслушал рассказ о месте апача в мире образца 2014 года.
Кроме очевидных случаев legacy, конечно.
С учетом наличия ngx_lua и сопутствующих модулей.
(Про фронтенд не будем, разумеется, дабы не избивать младенцев^W старцев совсем больно).

А так-то в своё время 1.3.x был очень хорош. А вместе с mod_perl так и просто ultimate.
Только с тех пор много воды утекло.

 
  7.23, Stax, 01:51, 25/04/2014 [^] [ответить] [смотреть все]  +/
(из любопытства - нет, я реально не слежу за ситуацией) - nginx уже научился htaccess?
Т.е. не общему конфигу, перечитываемому через restart/reload, а "изменил кто-нибудь настройки данного каталога - и на лету то, что под ним стало отдаваться иначе".

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

 
  8.24, Куяврег, 02:08, 25/04/2014 [^] [ответить] [смотреть все]  –1 +/
> Поменяли что-нибудь - скажите админу перегрузить конфиг, иначе ничего не подхватится.

ай беда... как же теперь быть шаредпомойкам...

 
8.25, rob pike, 02:34, 25/04/2014 [^] [ответить] [смотреть все]  
+1 +/
Да, вполне кейс. Хотя, конечно, considered "нинужна" (http://wiki.nginx.org/LikeApache-htaccess), но мы не станем им уподобляться.
Я бы, наверное, написал для таких кейсов пятнадцатистрочник, ловящий через inotify изменения и шлющий nginx-у сигнал перечитать конфиг - и странно если никто его, в общем виде с конфигурируемостью и прочим не написал, но может я чего не вижу, сонный.
 
  9.32, Аноним, 11:41, 25/04/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
На то есть важная причина В случае некорректного htaccess а проблеме будет под... весь текст скрыт [показать]
 
  10.33, NikolayV81, 11:53, 25/04/2014 [^] [ответить] [смотреть все]    [к модератору]  +/
> На то есть важная причина. В случае некорректного .htaccess'а проблеме будет подвержена
> только директория, в которой он лежит. В случае некорректного инклюда в
> nginx.conf весь релоад зафейлится, а после экстренного ребута сервера nginx вообще
> не взлетит, пока этот инклюд не поправят.

Странно сначала релоад непроверенный и сразу же reboot экстренный, ну так никто не мешает и httpd.conf поломать...

 
10.34, rob pike, 12:16, 25/04/2014 [^] [ответить] [смотреть все]    [к модератору]  
+/
Ну придется добавить проверку (вызов nginx с ключом -t, и посылать сигнал только если ОК), большое дело.
 
10.35, rob pike, 12:20, 25/04/2014 [^] [ответить] [смотреть все]    [к модератору]  +/ > после экстренного ребута сервера nginx вообще
> не взлетит, пока этот инклюд не поправят.

Это неприятно, да.
Модуль мог бы инклудить только то что корректно, но так с разбегу не уверен что это можно корректно реализовать используя только "законные" API nginx-а.
Впрочем, те, кому это действительно нужно, могли бы и патч поддерживать, он простенький же должен получаться.

 8.28, NikolayV81, 09:42, 25/04/2014 [^] [ответить] [смотреть все]    [к модератору]  +/ Смысл nginx именно в том что бы сократить время/ресурсы на обработку запроса, парсить конфиг на ходу дурацкая с точки зрения производительности идея. Почему не сделано автоматическое обновление, тоже понятно, reload позволяет не применять настройки если они кривые, что очень удобно в использовании.
У этого решения есть плюсы и минусы, основной плюс - скорость работы.
 8.31, Аноним, 10:38, 25/04/2014 [^] [ответить] [смотреть все]     [к модератору]  –1 +/
Он не научится ему никогда Если вам на эффективность и скорость пофиг и надо ва... весь текст скрыт [показать]
 2.17, Аноним, 00:13, 25/04/2014 [^] [ответить] [смотреть все] [показать ветку]  –1 +/
Апача хрен догонишь по пожирону ресурсов и неэффективной отгрузке статики ... весь текст скрыт [показать] [показать ветку]
 2.21, Аноним, 00:54, 25/04/2014 [^] [ответить] [смотреть все] [показать ветку]  +1 +/
Nginx крут тем что уже достаточно фичаст для того чтобы им можно было пользовать... весь текст скрыт [показать] [показать ветку]
 
1.4, Аноним, 20:35, 24/04/2014 [ответить] [смотреть все]  +1 +/
Разработчики также сделали опрос для сообщества, чтобы лучше спланировать будущи... весь текст скрыт [показать]
 
  2.6, Аноним, 20:57, 24/04/2014 [^] [ответить] [смотреть все] [показать ветку]  –1 +/
 
  3.19, Аноним, 00:50, 25/04/2014 [^] [ответить] [смотреть все]  +1 +/
Вопросы как вопросы Вполне можно и фи высказать и похвалить и указать что не та... весь текст скрыт [показать]
 
  3.20, Аноним, 00:52, 25/04/2014 [^] [ответить] [смотреть все]  +1 +/
Это вообще совершенно посторонний ресурс занимающийся проведением опросов Хотя,... весь текст скрыт [показать]
 
  4.26, хм, 06:57, 25/04/2014 [^] [ответить] [смотреть все]  +1 +/
>> aspx?
> Это вообще совершенно посторонний ресурс занимающийся проведением опросов. Хотя, конечно,
> aspx в опросе про nginx - это да, фэйловато :). Могли
> бы нанять пару веб-обезьянок, они бы формы для опроса за пару
> дней накодили без таких фиаско.

спасибо, капитан.
Оно еще и символично. На CDN nginx, а сзади IIS.

 
  5.30, Аноним, 10:35, 25/04/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
Ну да, IIS гомно Вы не знали Сюрприз Остается правда вопрос - зачем платить з... весь текст скрыт [показать]
 
1.11, PyMonty, 22:33, 24/04/2014 [ответить] [смотреть все]  –1 +/ Рекомендуется использовать основную ветку: http://nginx.com/blog/nginx-1-6-1-7-released/
 
  2.27, Аноним, 09:15, 25/04/2014 [^] [ответить] [смотреть все] [показать ветку]  +1 +/
Рекомендуют, так как им тестировщики нужны Поэтому в своё время они unstable в ... весь текст скрыт [показать] [показать ветку]
 
1.15, неАноним, 23:13, 24/04/2014 [ответить] [смотреть все]  +/ УРА! sni!!!!
 
Ваш комментарий  

Read more http://www.opennet.ru/opennews/art.shtml?num=39638