Хотя в ответе Стивена затрагиваются ключевые моменты и очень простое краткое изложение того, что представляет собой каждая разновидность, я дам вам гораздо более подробное описание различий, поскольку я немного работаю над упаковкой и очень разными наборами модулей в каждый абсолютно важен для хорошего ответа. Базовые описания не дают должного сравнения. (Кроме того, спасибо Стивену, который цитирует мой старый блог (и даже называет меня «сопровождающим»). Я хотел перенести пост nginx-is-come-to-main на мой новый блог, но у меня не было возможности .)
Также обратите внимание, что последние пакеты для веб-сервера NGINX доступны в PPA NGINX, поддерживаемых мной, которые основаны почти полностью на Debian. ( Стабильный PPA (1.6.2 на эту должность); Основной PPA (1.7.7 на эту должность, с 1.7.8 намечен на землю 4 декабря 2014 года))
Различных вкусов nginx
:
Разные версии являются одной и той же версией nginx
, однако разработчики пакетов Debian выбрали варианты, чтобы обеспечить различные наборы функций (для nginx-extras
), а также минимальный и наиболее функциональный «полный» набор функций, веб-серверы, как правило, используются на веб-сайтах. Точная причина, по которой функция была выбрана вместо другой, мне не известна, однако при дополнительном обсуждении с одним из сопровождающих Debian по IRC было сделано заявление, подтверждающее мою первоначальную оценку, что каждый вариант предназначен для того, чтобы быть различным набором функций для другой вариант использования - light
для облегченного набора функций, который соответствует минимальному хостингу сайта, full
для более полного набора функций без включения каких-либо более тяжелых дополнений, иextras
почти все, что есть в пакете, который может быть включен в Ubuntu. naxsi
до 15.04 был вариант Naxsi, в котором был только минимум модулей, поскольку naxsi мог быть довольно ресурсоемким.
Предположительно, по словам одного из сопровождающих Debian NGINX, который регулярно координирует с Upstream NGINX частную беседу, о которой я не могу сейчас публиковать журналы, NGINX 2.x будет иметь поддержку загружаемых модулей. В этом случае light
, full
и extras
будут метапакетами , которые требуют от индивидуальных упаковок , содержащих каждый модуль. Дата, к которой это относится, пока неизвестна, а также какие модули на самом деле способны это сделать.
В настоящее время nginx
виртуальный пакет предназначен для установки только одной из доступных версий. По умолчанию, как nginx-core
и в main, и мы хотели бы, чтобы люди использовали его чаще, nginx-core
это первый элемент, который видели и пытались установить в виртуальном пакете. (Тем не менее, nginx
пакет может опираться на любой из ароматов nginx
, и в основном там, чтобы сделать установку немного проще для тех, кому не нужны какие-либо конкретные вкусовые предпочтения)
Детальная разбивка с конкретными модулями , доступными в каждом варианте (основана от Vivid debian/control
файла и Trusty debian/control
файл (как пакеты Naxsi были удалены в Vivid)) доступно ниже. Обратите внимание, что это не отражает самые последние изменения в Ubuntu, и вам следует обратиться к этим описаниям пакетов, чтобы убедиться, что вы обновили точную информацию :
nginx-core
является единственным вариантом в разделе Main репозиториев Ubuntu, начиная с 14.04, и существует только в репозиториях Ubuntu (и не входит в PPA или Debian, и никогда не будет включен в Debian). Он фактически идентичен nginx-full
вкусу, но не содержит сторонних модулей. Обоснование использованияnginx-full
в качестве основы для этого варианта было то, что мы хотели предоставить относительно полный набор основных модулей во встроенных двоичных файлах, в то же время не допуская сторонних модулей. Как таковой, он не содержит никаких сторонних модулей, так как команда безопасности провела обзор кода и обнаружила, что сторонние модули имеют широко варьирующиеся стили кодирования, которые не так хорошо поддерживаются, как nginx-tarball-включенный модули (это обсуждается более подробно в основной ошибке запроса включения / отчета , которая содержит пункты для обсуждения и дальнейшие обзорные обсуждения относительно того, что может быть включено в Ubuntu Main nginx
). Полный список включенных модулей приведен в описании пакета, которое я здесь выбрал:
СТАНДАРТНЫЕ МОДУЛИ HTTP: Core, Access, Auth Basic, Auto Index, Браузер, Charset, Пустой GIF, FastCGI, Geo, Gzip, Заголовки, Индекс, Запросы пределов, Предельная зона, Журнал, Карта, Memcached, Прокси, Referer, Rewrite, SCGI , Разделенные клиенты, SSI, Upstream, ID пользователя, UWSGI.
ДОПОЛНИТЕЛЬНЫЕ МОДУЛИ HTTP: Сложение, Отладка, GeoIP, Прежнее сжатие Gzip, HTTP Sub, Фильтр изображений, IPv6, Реальный IP, Spdy, SSL, Статус заглушки, Подстановка, WebDAV, XSLT.
Почтовые модули: Mail Core, IMAP, POP3, SMTP, SSL.
nginx-light
это самый легкий аромат из nginx
доступных. Он находится в репозитории Universe, и вы должны иметь возможность его использовать. Это не позволяет большое количество модулей, доступных в -core
или -full
. Он также содержит сторонние модули. Модули, доступные в этом, следующие:
СТАНДАРТНЫЕ МОДУЛИ HTTP: Core, Access, Auth Basic, Auto Index, Charset, Пустой GIF, FastCGI, Gzip, Заголовки, Index, Log, Map, Proxy, Rewrite, Upstream.
ДОПОЛНИТЕЛЬНЫЕ МОДУЛИ HTTP: запрос аутентификации, отладка, сжатие Gzip, IPv6, реальный Ip, SSL, статус заглушки.
МОДУЛИ ТРЕТЬИХ ЛИЦ: Эхо.
nginx-full
является одним из наиболее многофункциональных ароматов nginx
упаковки. Как и его light
аналог, он находится в хранилище Вселенной. Он включает большинство основных модулей, которые являются стандартными и дополнительными в исходном архиве from-nginx, а также несколько сторонних модулей, разработанных для расширения возможностей веб-сервера nginx. Это модули следующие:
СТАНДАРТНЫЕ МОДУЛИ HTTP: Core, Access, Auth Basic, Auto Index, Браузер, Charset, Пустой GIF, FastCGI, Geo, Gzip, Заголовки, Индекс, Запросы пределов, Предельная зона, Журнал, Карта, Memcached, Прокси, Referer, Rewrite, SCGI , Разделенные клиенты, SSI, Upstream, ID пользователя, UWSGI.
ДОПОЛНИТЕЛЬНЫЕ МОДУЛИ HTTP: сложение, запрос авторизации, отладка, GeoIP, предварительное сжатие Gzip, HTTP Sub, фильтр изображений, IPv6, реальный IP, Spdy, SSL, статус заглушки, подстановка, WebDAV, XSLT.
Почтовые модули: Mail Core, IMAP, POP3, SMTP, SSL.
МОДУЛИ ТРЕТЬИХ ЛИЦ: Auth PAM, DAV Ext, Echo, HTTP Substitution Filter, Upstream Fair Queue.
nginx-extras
это самый многофункциональный вкус nginx
упаковки. И, как и его full
и light
братья, он тоже находится в хранилище Вселенной. Он включает все модули, nginx-full
но также включает в себя дополнительные модули (такие как модуль Perl) и многие другие сторонние модули, разработанные для еще большего расширения возможностей веб-сервера nginx. Полный список модулей приведен ниже:
СТАНДАРТНЫЕ МОДУЛИ HTTP: Core, Access, Auth Basic, Auto Index, Браузер, Charset, Пустой GIF, FastCGI, Geo, Gzip, Заголовки, Индекс, Запросы пределов, Предельная зона, Журнал, Карта, Memcached, Прокси, Referer, Rewrite, SCGI , Разделенные клиенты, SSI, Upstream, ID пользователя, UWSGI.
ДОПОЛНИТЕЛЬНЫЕ МОДУЛИ HTTP: сложение, запрос авторизации, отладка, встроенный Perl, FLV, GeoIP, предварительное сжатие Gzip, фильтр изображений, IPv6, MP4, случайный индекс, реальный IP, защищенная связь, Spdy, SSL, статус заглушки, подстановка, WebDAV, XSLT.
Почтовые модули: Mail Core, IMAP, POP3, SMTP, SSL.
МОДУЛИ ТРЕТЬИХ ЛИЦ: Auth PAM, Chunkin, DAV Ext, Echo, Embedded Lua, Fancy Index, HttpHeadersMore, фильтр подстановки HTTP, http push, комплект разработки Nginx, ход выполнения загрузки, восходящая ярмарка очереди.
nginx-naxsi
это вариант nginx, в котором доступен модуль Naxsi Web Application Firewall. Он также есть в Universe, однако этот вариант больше не поддерживается сопровождающими Debian и будет полностью удален из Ubuntu с выпуском 15.04. В дополнение к модулю Naxsi WAF, он также включает в себя гораздо более легкий набор модулей, чем nginx-full
. Полный список модулей приведен ниже:
СТАНДАРТНЫЕ МОДУЛИ HTTP: Core, Access, Auth Basic, Auto Index, Браузер, Charset, Core, Пустой GIF, FastCGI, Geo, Gzip, Заголовки, Индекс, Запросы пределов, Ограниченная зона, Журнал, Карта, Memcached, Прокси, Referer, Переписать , Разделенные клиенты, SSI, Upstream, ID пользователя.
ДОПОЛНИТЕЛЬНЫЕ МОДУЛИ HTTP: Отладка, IPv6, Реальный IP, SSL, Статус заглушки.
МОДУЛИ ТРЕТЬИХ ЛИЦ: Naxsi, Cache Purge, Upstream Fair.
Использование ресурсов среди вкусов
Несмотря на то, что мне неизвестны какие-либо тесты, которые выполнялись для различных разновидностей nginx
, как правило, логично предположить, что чем больше nginx
используемой вами версии с поддержкой функций , тем больше ресурсов она будет использовать.
Однако, в отличие от Apache, который может быть чем-то вроде шлюхи памяти с включенным большим количеством модулей, он по- nginx
прежнему не потребляет столько памяти, сколько Apache, когда модули включены. (Исключением из этого утверждения является naxsi
вариант. Этот вариант всегда потребляет гораздо больше ресурсов, так как это брандмауэр веб-приложений, а также веб-сервер.)
Я добавлю тесты к этому ответу, если найду их, но, опять же, я не знаю ни о каких существующих тестах для различных вариантов по отношению друг к другу. И даже несмотря на сайты я бег не большой трафика, я не заметил какое - либо реальное снижение производительности между nginx-extras
, nginx-full
или nginx-light
на PHP инициативы сайта.