Збірка nginx з вихідних файлів
Збірка налаштовується командою configure. Вона визначає особливості системи і, зокрема, методи, які nginx може використовувати для обробки з'єднань. Врешті-решт вона створює Makefile. Команда configure підтримує наступні параметри:
--prefix = шлях - задає каталог, в якому будуть знаходитися файли сервера. Цей же каталог буде використовуватися для всіх відносних шляхів, що задаються configure (крім шляхів до вихідних текстів бібліотек) і в файлі конфігурації nginx.conf. За замовчуванням - каталог / usr / local / nginx.
--sbin-path = шлях - задає ім'я файлу, що виконується nginx. Це ім'я використовується тільки на стадії установки. За замовчуванням файл називається префікс / sbin / nginx.
--conf-path = шлях - задає ім'я конфігураційного файлу nginx.conf. При бажанні nginx можна завжди запустити з іншим конфігураційних файлів, вказавши його в параметрі командного рядка -c файл. За замовчуванням файл називається префікс /conf/nginx.conf.
--pid-path = шлях - задає ім'я файлу nginx.pid, в якому буде зберігатися номер головного процесу. Після установки ім'я файлу можна завжди поміняти в файлі конфігурації nginx.conf за допомогою директиви pid. За замовчуванням ім'я файлу - префікс /logs/nginx.pid.
--error-log-path = шлях - задає ім'я основного файлу помилок, попереджень і діагностики. Після установки ім'я файлу можна завжди поміняти в файлі конфігурації nginx.conf за допомогою директиви error_log. За замовчуванням ім'я файлу - префікс /logs/error.log.
--http-log-path = шлях - задає ім'я основного файлу реєстрації запитів HTTP-сервера. Після установки ім'я файлу можна завжди поміняти в файлі конфігурації nginx.conf за допомогою директиви access_log. За замовчуванням ім'я файлу - префікс /logs/access.log.
--build = ім'я - задає необов'язкове ім'я збірки nginx.
--user = ім'я - задає ім'я непривилегированного користувача, з правами якого будуть виконуватися робочі процеси. Після установки це ім'я можна завжди поміняти в файлі конфігурації nginx.conf за допомогою директиви user. За замовчуванням ім'я користувача nobody.
--group = ім'я - задає ім'я групи, з правами якої будуть виконуватися робочі процеси. Після установки це ім'я можна завжди поміняти в файлі конфігурації nginx.conf за допомогою директиви user. За замовчуванням група збігається з ім'ям непривилегированного користувача.
--with-select_module
--without-select_module - дозволяє або забороняє складання модуля для роботи сервера за допомогою методу select (). Цей модуль збирається автоматично, якщо на платформі не виявлено більш підходящого методу - kqueue, epoll або / dev / poll.
--with-poll_module
--without-poll_module - дозволяє або забороняє складання модуля для роботи сервера за допомогою методу poll (). Цей модуль збирається автоматично, якщо на платформі не виявлено більш підходящого методу - kqueue, epoll або / dev / poll.
--without-http_gzip_module - забороняє складання модуля стиснення відповідей HTTP-сервера. Для складання і роботи цього модуля потрібна бібліотека zlib.
--without-http_rewrite_module - забороняє складання модуля HTTP-сервера, що дозволяє робити перенаправлення і міняти URI запитів. Для складання і роботи цього модуля потрібна бібліотека PCRE.
--without-http_proxy_module - забороняє збірку проксірующего модуля HTTP-сервера.
--with-http_ssl_module - дозволяє збірку модуля для роботи HTTP-сервера по протоколу HTTPS. За замовчуванням модуль не збирається. Для складання і роботи цього модуля потрібна бібліотека OpenSSL.
--with-pcre = шлях - задає шлях до вихідних текстів бібліотеки PCRE. Дистрибутив бібліотеки (версію 4.4 - 8.41) потрібно взяти на сайті PCRE і розпакувати. Все інше зроблять ./configure nginx'а і make. Бібліотека потрібна для використання регулярних виразів в директиві location і для модуля ngx_http_rewrite_module.
--with-pcre-jit - збирає бібліотеку PCRE з підтримкою JIT-компіляції (1.1.12, директива pcre_jit).
--with-zlib = шлях - задає шлях до вихідних текстів бібліотеки zlib. Дистрибутив бібліотеки (версію 1.1.3 - 1.2.11) потрібно взяти на сайті zlib і розпакувати. Все інше зроблять ./configure nginx'а і make. Бібліотека потрібна для модуля ngx_http_gzip_module.
--with-cc-opt = параметри - задає додаткові параметри, які будуть додані до змінної CFLAGS. При використанні системної бібліотеки PCRE у FreeBSD, потрібно вказати --with-cc-opt = "- I / usr / local / include". Якщо потрібно збільшити число файлів, з якими може працювати select (). то це теж можна поставити тут же: --with-cc-opt = "- D FD_SETSIZE = 2048".
--with-ld-opt = параметри - задає додаткові параметри, які будуть використані при лінковке. При використанні системної бібліотеки PCRE у FreeBSD, потрібно вказати --with-ld-opt = "- L / usr / local / lib".
Приклад використання параметрів (все це потрібно набрати в одному рядку):
Після конфігурації nginx компілюється і встановлюється за допомогою make.