Премиальное программное обеспечение и практические уроки
Как установить nginx на Windows
Много знакомогоЛинуксЛюди использовалиnginx, nginx как вебсерверЭтот небольшой и мощный nginx медленно пожирает веб-сервер.АпачиИ доля IIS. Итак, какие же мощные функции есть у nginx? Помимо функций веб-сервера, многие могут не понимать, насколько мощным является nginx.
Nginx, Apache и IIS вместе известны как три мушкетера веб-серверов.
nginx [engine x] — это HTTP и обратныйПрокси-сервер、邮件действующий服务器和通用 TCP/UDP 代理服务器,最初由Игорь СысоевВ течение длительного времени он использовался во многих большегрузных автомобилях.РоссияРаботает на сайте, в том числе Яндекс、 Mail.Ru、 ВКи РамблерПо данным Netcraft, в апреле 2022 года nginx обслуживал или проксировал 21,79% самых загруженных сайтов. Вот несколько примеров успеха: Дропбокс、 Нетфликс、 WordPress.com, FastMail.FM.
Используется для Окна Эта версия nginx для Windows использует нативный API Win32 (а не уровень эмуляции Cygwin). В настоящее время используются только методы обработки подключений select() и poll() (1.15.9), поэтому не следует ожидать высокой производительности и масштабируемости. В связи с этой и другими известными проблемами версия nginx для Windows считается бета-версией. В настоящее время она предлагает практически ту же функциональность, что и версия nginx для UNIX, за исключением XSLT-фильтров, фильтров изображений, модуля GeoIP и встроенного языка Perl.
Что такое обратный прокси?
Nginx не только обеспечивает базовые функции веб-сервера, но и имеет отличную функцию обратного прокси-сервера. Прокси) метод заключается в использовании прокси-сервера для приемаинтернетЗатем прокси-сервер пересылает запрос на соединение серверу во внутренней сети и возвращает клиенту, запрашивающему соединение в Интернете, полученный от сервера результат. В этот момент прокси-сервер представляется внешнему миру как сервер.
Скачать nginx
Сначала посетите официальный сайт nginx, на котором представлена версия программного обеспечения сервера nginx для Windows.
Посетите официальный сайт ngixn:https://nginx.org/
По состоянию на 2022 год последней версией является nginx-1.21.6. Нажмите «Загрузить» справа и скачайте версию nginx для Windows на странице загрузки.
Вы можете загрузить основную или стабильную версию.
Нажмите, чтобы загрузить:nginx/Windows-1.21.6 | nginx/Windows-1.20.2
Установить nginx
После загрузки дважды щелкните файл nginx.exe, чтобы запустить nginx.
После двойного щелчка по nginx.exe появилось черное всплывающее окно, и nginx был успешно запущен.
Или откройте командное окно cmd, перейдите в каталог, куда вы распаковали nginx, введите команду nginx.exe или start nginx и нажмите Enter, чтобы запустить nginx.
Как проверить, успешно ли запущен nginx? Введите в браузере http://localhost
Если вы видите страницу приветствия nginx, поздравляем, он успешно запущен.
Настроить nginx
Nginx успешно установлен. Далее необходимо настроить nginx. Как и в Linux, для настройки nginx в Windows также требуется изменить файл конфигурации nginx.
Нажмите, чтобы открыть КОНФ Папка, редактировать с помощью Блокнота в папке nginx.conf документ
http{
сервер{
listen 80; порт прослушивания #, измените здесь при настройке на основе IP, например 192.168.1.100:8080;
имя_сервера boxpu.com;
Доменное имя хоста #. Если проект уже выпущен, укажите доменное имя в публичной сети. Если проект развёрнут локально, можно добавить сопоставление IP-адреса и доменного имени в файл C:\Windows\System32\drivers\etc\hosts.
Анализ отображения #, / представляет корневой путь, и здесь анализ также использует анализ регулярных выражений.
расположение / {
root E:/uzbox; путь к сайту #
index index.html index.htm; файл домашней страницы #
}
}
}
При указании каталога, в котором расположен веб-сайт, используйте / вместо \.
Некоторые распространенные конфигурации в http{}
включить mime.types; таблицу сопоставления расширений файлов и типов файлов #
default_type application/octet-stream; тип файла по умолчанию #
sendfile включен; # включает режим эффективной передачи файлов. Директива sendfile определяет, должен ли Nginx вызывать функцию sendfile для вывода файлов. Установите значение «on» для обычных приложений. Для приложений с высокой нагрузкой на диск, таких как загрузка данных, установите значение «off», чтобы сбалансировать скорость обработки дискового и сетевого ввода-вывода и снизить нагрузку на систему. Примечание: Если изображения отображаются некорректно, измените значение на «off».
автоиндексация включена; # включает доступ к списку каталогов, подходит для серверов загрузки, по умолчанию закрыт.
tcp_nopush включен; # предотвращает перегрузку сети
tcp_nodelay включен; # предотвращает перегрузку сети
keepalive_timeout 120; # — длительный тайм-аут соединения, в секундах
gzip включен; # включает сжатый gzip вывод
После настройки файла nginx.conf используйте следующую команду, чтобы проверить правильность файла конфигурации.
nginx -t
После ввода команды, если конфигурация верна, будет возвращено сообщение «синтаксис в порядке». Если конфигурация неверна, будет возвращена строка с ошибкой.
Если используется порт по умолчанию 80, сначала проверьте, равен ли порт 80 в файле конфигурации nginx.conf в каталоге conf. После подтверждения используйте следующую команду, чтобы проверить, доступен ли порт 80.
netstat -ano | findstr 0.0.0.0:80
Или используйте следующую команду определения порта:
netstat -ano | findstr "80"
При изменении файла конфигурации nginx nginx.conf вам не нужно останавливать и перезапускать nginx. Для вступления изменений в силу достаточно выполнить следующую команду.
nginx -s перезагрузка
Если вы хотите отключить nginx
Введите команду nginx в окне CMD
nginx -s stop
или
nginx -s выход
Настройка nginx как обратного прокси
Добавьте блок tomcat_server в файл конфигурации nginx.conf и заполните блок tomcat_server доменным именем веб-сайта, который необходимо проксировать.
#upstream tomcat_server блокирует настройки обратного прокси-сервера.
восходящий tomcat_server{
сервер t1.boxpu.com;
}
Если вам необходимо настроить балансировку нагрузки на обратном прокси-сервере, вы можете настроить несколько сайтов обратного прокси-сервера.
Основной блок конфигурации веб-сайта балансировки нагрузки #
восходящий tomcat_server{
сервер t1.boxpu.com вес=1;
сервер t2.boxpu.com вес=2;
}
Атрибут weight указывает вес каждого сервера, к которому осуществляется доступ. Чем выше вес, тем выше вероятность доступа. Например, если weight = 2, nginx отдаёт приоритет доступу к t2.boxpu.com. Если к t2.boxpu.com обращается слишком много пользователей, он автоматически переключится на t1.boxpu.com.
После настройки блока tomcat_server выше настройте обратный прокси-сервер в блоке server.
После завершения настройки используйте nginx -t для проверки правильности синтаксиса, а затем перезапустите nginx.
сервер {
расположение / {
proxy_pass http://tomcat_server;
# В корневом каталоге используйте proxy_pass для вызова блока tomcat_server.
}
}
nginx -s перезагрузка
Заключение
В WindowsУстановить nginxНастройка прошла успешно. Метод настройки в Windows аналогичен методу в Linux. Разницы нет. Разница лишь в корневом каталоге веб-хранилища. При обращении к каталогу используйте / вместо \.
nginx -s stop Быстрое выключение
nginx -s quit корректное завершение работы
nginx -s reload изменяет конфигурацию, запускает новый рабочий процесс с новой конфигурацией и корректно завершает старый рабочий процесс.
nginx -s reopen повторно открывает файл журнала
Известные проблемы
Хотя можно запустить несколько рабочих, только один из них фактически выполняет какую-либо работу.
Функция UDP-прокси не поддерживается.
Возможные будущие улучшения
Запускать как службу.
Используйте порты завершения ввода-вывода в качестве метода обработки соединений.
Используйте несколько рабочих потоков в одном рабочем процессе.