Sorry, you have been blocked
This website is using a security service to protect itself from online attacks. The action you just performed triggered the security solution. There are several actions that could trigger this block including submitting a certain word or phrase, a SQL command or malformed data.
What can I do to resolve this?
You can email the site owner to let them know you were blocked. Please include what you were doing when this page came up and the Cloudflare Ray ID found at the bottom of this page.
Cloudflare Ray ID: 755505fb8a230d56 • Your IP: Click to reveal 138.199.34.51 • Performance & security by Cloudflare
Устранение неполадок установки и настройки Nginx
Nginx – это свободный и открытый веб-сервер, который используется для обслуживания сайтов и приложений любой сложности. Nginx известен своим низким воздействием на память, высокой масштабируемостью и модульной, управляемой событиями архитектурой, которая может обеспечить надежную и предсказуемую производительность. Nginx работает не только как веб-сервер, но и как балансировщик нагрузки, кэширующий HTTP-сервер и обратный прокси-сервер.
Конечно, сначала может быть сложно запомнить все команды и рекомендации по управлению сервером Nginx. Это руководство предназначено для тех, кто работает с Nginx. Оно охватывает некоторые основные команды управления сервисами, а также советы по диагностике и решению некоторых распространенных проблем.
Каждый раздел может использоваться независимо от других, поэтому вы можете пропустить разделы, которые вам не нужны. Все условные значения в командах выделены красным; вместо этих значений вы можете подставить свои данные.
Каждый раздел предлагает ссылки на другие руководства, с которыми можно проконсультироваться.
Примечание: Предполагается, что вы работаете с версией Nginx, установленной из репозитория по умолчанию в Debian-подобном дистрибутиве. Некоторые из команд и директив, описанных в этом руководстве, отсутствуют в других дистрибутивах или в версиях Nginx, установленных из других источников.
Установка Nginx
Обновите индекс пакетов, а затем установите Nginx:
sudo apt-get update
sudo apt-get install nginx
Проверка состояния Nginx
Чтобы проверить состояние веб-сервера на текущей машине, введите:
sudo systemctl status nginx
Автозагрузка Nginx
По умолчанию сервис Nginx запускается автоматически. Если вы хотите изменить это поведение, введите:
sudo systemctl disable nginx
Чтобы снова добавить Nginx в автозагрузку, введите:
sudo systemctl enable nginx
Управление сервисом Nginx
Чтобы остановить сервер Nginx, введите следующую команду:
sudo systemctl stop nginx
Чтобы запустить сервер Nginx, введите:
sudo systemctl start nginx
Чтобы остановить сервис и запустить его снова, введите:
sudo systemctl restart nginx
Если вы изменили конфигурацию, вы можете перезагрузить Nginx в текущей сессии. Введите следующую команду:
sudo systemctl reload nginx
Создание корневого каталога для статического контента
При создании сайтов на Nginx разработчики часто используют виртуальные хосты (или блоки server) – это хосты, которые обслуживают отдельные сайты или домены. Для этого нужно создать document root, каталог верхнего уровня, который Nginx проверяет при обслуживании контента.
Команды в приведенном ниже блоке создадут новый корневой каталог, передадут права на него пользователю sudo и изменят права доступа к каждому подкаталогу в подкаталога в /var/www/.
sudo mkdir -p /var/www/example.com/html
sudo chown -R $USER:$USER /var/www/example.com/html
find /var/www -type d -exec chmod 775 <> \;
В данном случае корневой каталог предлагает глобальные права на чтение и исполнение. Чтобы выбрать другие права доступа, замените 775 и укажите требуемые права.
Помните, что права доступа должны меняться в соответствии с ситуацией.
Создание корневого каталога для динамических файлов
Если ваш сайт использует динамические модули типа PHP-FPM, вам может понадобиться передать права на некоторые файлы группе www-data. Если группе нужно право на запись в каталоге, передайте группе права собственности на каталог.
Предложенные ниже команды создают новый document root, передают его группе www-data и изменяют права на каждый подкаталог в /var/www.
sudo mkdir -p /var/www/example.com/html
sudo chown -R www-data:www-data /var/www/example.com
sudo find /var/www -type d -exec chmod 775 <> \;
Включение и отключение конфигурационных файлов
Чтобы включить виртуальный хост, нужно создать симлинк из каталога sites-available в каталог sites-enabled, который Nginx читает во время запуска.
Для этого введите комнаду:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
После этого нужно перезагрузить Nginx, чтобы настройки обновились.
Устранение неполадок с хэш-таблицей
Nginx использует хэш-таблицы, чтобы быстро обрабатывать статические данные (имена серверов, MIME-типы). Если вы добавили несколько имен серверов, есть вероятность, что заданного размера хэша имени сервера будет не хватать, и при внесении изменений вы увидите ошибку server_names_hash_bucket_size. Ее можно устранить, отредактировав одно значение в файле /etc/nginx/nginx.conf.
Откройте этот файл:
sudo nano /etc/nginx/nginx.conf
Найдите в файле директиву server_names_hash_bucket_size. Удалите символ #, чтобы раскомментировать строку, и увеличьте значение директивы:
http <
. . .
server_names_hash_bucket_size 64 ;
. . .
>
Это увеличит размер хэш-таблиц имен серверов Nginx и позволит сервису обрабатывать все имена серверов, которые вы добавили. Сохраните и закройте файл, а затем перезапустите Nginx, чтобы обновить настройки.
Тестирование конфигурации
Каждый раз, когда вы вносите изменения в конфигурационные файлы Nginx, обязательно выполните следующую команду, чтобы проверить наличие синтаксических ошибок:
Если в конфигурации есть ошибки, вывод команды укажет, где именно они обнаружены. Если же в конфигурационных файлах нет синтаксических ошибок, вы увидите примерно такой вывод:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Если ошибок нет, вы можете перезагрузить сервис:
sudo systemctl restart nginx
Важные файлы и каталоги Nginx
Контент
Каталог /var/www/html хранит весь контент сайта (это корневой каталог сайта). Вы можете изменить стандартные настройки Nginx и указать другие каталоги в var/www.
Конфигурация сервера
- /etc/nginx/: конфигурационный каталог Nginx (здесь хранятся все конфигурационные файлы веб-сервера).
- /etc/nginx/nginx.conf: главный конфигурационный файл веб-сервера, в котором находятся все глобальные параметры.
- /etc/nginx/sites-available/default: виртуальный хост Nginx по умолчанию. Другие виртуальные хосты также должны храниться в каталоге sites-available (но они не будут работать без симлинка в sites-enabled).
- /etc/nginx/sites-enabled/: здесь хранятся файлы включенных виртуальных хостов. При запуске или перезагрузке Nginx читает конфигурационные файлы и ссылки в этом каталоге, чтобы собрать полную конфигурацию.
- /var/log/nginx/access.log: это лог, который регистрирует все запросы Nginx (если в конфигурации веб-сервера не сказано другого).
- /var/log/nginx/error.log: это лог ошибок.
Чтобы получить доступ к логам systemd процесса Nginx, запустите эту команду:
sudo journalctl -u nginx
Заключение
Данный мануал перечислил общие процедуры по поддержке сервера Nginx. Чтобы узнать больше о работе с Nginx, ознакомьтесь со следующими руководствами:
Как узнать, установлен ли nginx в Linux?
Мы можем проверить, установлен ли Nginx, и проверить его версию, используя следующую команду: $ nginx -v.
Как узнать, установлены ли модули Nginx?
Как вывести список установленных модулей Nginx и скомпилированных флагов
- Список установленных модулей Nginx в Linux. Убедитесь, что вы запускаете команду nginx от имени пользователя root (sudo nginx -V), а nginx находится в вашем $ PATH. …
- Узнайте, с какими флагами был скомпилирован Nginx под Unix. Эта же команда выводит список скомпилированных и динамических модулей под Nginx:…
- Другие параметры команды nginx. Показать версию nginx и выйти:…
- ЗАКЛЮЧЕНИЕ.
Как я могу проверить свой статус Nginx?
Чтобы проверить конфигурацию Nginx, выполните следующую команду. Вы можете протестировать конфигурацию Nginx, сбросить ее и выйти, используя флаг -T, как показано. nginx: файл конфигурации / etc / nginx / nginx. conf в порядке nginx: файл конфигурации / etc / nginx / nginx.
Где установлен Nginx Linux?
По умолчанию NGINX будет установлен в / usr / local / nginx. Вы можете изменить этот и другие параметры с помощью параметров установки и времени компиляции.
Как мне узнать свой порт nginx?
Прежде всего проверьте, запущен ли nginx. Вы должны увидеть что-то подобное. если ваш порт 80 занят, он появится здесь. Должна отображаться страница nginx по умолчанию. или если он показывает страницу node-red, тогда node-red использует порт 80.
Где хранятся модули Nginx?
Местоположение по умолчанию, если во время компиляции путь не был указан, — $ NGX_PREFIX / modules. В моей системе macOS для $ NGX_PREFIX по умолчанию используется / usr / local / nginx, поэтому путь модулей по умолчанию — / usr / local / nginx / modules; тогда как Ubuntu 17.10 немного разбивает префиксный монолит и ожидает модули в / usr / lib / nginx / modules.
Что такое модули Nginx?
Вместо служебного пояса в Nginx есть цепочка модулей. … Когда Nginx блокирует доступ к ресурсу на основе IP-адреса или учетных данных HTTP-аутентификации, модуль выполняет отклонение. Когда Nginx взаимодействует с серверами Memcache или FastCGI, модуль является рацией.
Как запустить Nginx из командной строки?
- Nginx — это мощное серверное приложение, которое маршрутизирует сетевой трафик. …
- Nginx работает как служба на вашем сервере. …
- systemctl можно использовать для запуска и остановки службы Nginx. …
- Чтобы принудительно закрыть и перезапустить Nginx и связанные процессы: sudo /etc/init.d/nginx restart.
Как мне найти свою конфигурацию nginx?
Все файлы конфигурации NGINX находятся в каталоге / etc / nginx /. Первичный файл конфигурации — / etc / nginx / nginx. конф. Параметры конфигурации в NGINX называются директивами.
Как мне настроить Nginx?
- Шаг 1. Установите Nginx из репозиториев по умолчанию. …
- Шаг 2 (необязательно): установите Nginx из официального репозитория. …
- Шаг 3. Запустите Nginx и настройте его для запуска при перезагрузке. …
- Шаг 4. Отключите файл конфигурации по умолчанию. …
- Шаг 5: Создайте новый файл конфигурации. …
- Шаг 6: Свяжите и активируйте файл конфигурации. …
- Шаг 7. Протестируйте и перезапустите Nginx.
Как загрузить Nginx в Linux?
Установка предварительно созданного пакета Debian из репозитория ОС
- Обновите информацию о репозитории Debian: $ sudo apt-get update.
- Установите пакет с открытым исходным кодом NGINX: $ sudo apt-get install nginx.
- Проверьте установку: $ sudo nginx -v версия nginx: nginx / 1.6.2.
Что такое Nginx в Linux?
¶ NGINX — это бесплатный высокопроизводительный HTTP-сервер с открытым исходным кодом и обратный прокси-сервер, а также прокси-сервер IMAP / POP3. NGINX известен своей высокой производительностью, стабильностью, богатым набором функций, простой конфигурацией и низким потреблением ресурсов. NGINX — один из немногих серверов, написанных для решения проблемы C10K.
Nginx перезагружает разорванные соединения?
6 ответов. Он выполнит горячую перезагрузку конфигурации без простоя. Если у вас есть ожидающие запросы, тогда будут существовать процессы nginx, которые будут обрабатывать эти соединения до того, как они умрут, так что это чрезвычайно изящный способ перезагрузки конфигураций. См. Http://wiki.nginx.org/CommandLine для получения дополнительных параметров командной строки .
Как мне изменить порт nginx?
Как изменить номер порта Nginx в Ubuntu
- Откройте файл конфигурации NGINX. Откройте терминал и выполните следующую команду # vi / etc / nginx / sites-enabled / default [В Debian / Ubuntu] # vi /etc/nginx/nginx.conf [В CentOS / RHEL]…
- Измените номер порта NGINX. Найдите строку, которая начинается с прослушивания внутри серверного блока. …
- Перезапустите NGINX.
Для чего использовали Nginx?
NGINX — это программное обеспечение с открытым исходным кодом для веб-обслуживания, обратного проксирования, кэширования, балансировки нагрузки, потоковой передачи мультимедиа и многого другого. Он начинался как веб-сервер, рассчитанный на максимальную производительность и стабильность.
Какой номер порта у SSH?
Стандартный порт TCP для SSH — 22. SSH обычно используется для доступа к Unix-подобным операционным системам, но его также можно использовать в Microsoft Windows.
Top 12 Nginx Commands Every Linux Admin Should Know
In this article, I will take you through top 10 Nginx commands which is important for every Linux Admin using Nginx Server. As per Nginx Wiki, NGINX is a free, open-source, high-performance HTTP server and reverse proxy, as well as an IMAP/POP3 proxy server. NGINX is known for its high performance, stability, rich feature set, simple configuration, and low resource consumption.
NGINX is one of a handful of servers written to address the C10K problem. Unlike traditional servers, NGINX doesn’t rely on threads to handle requests. Instead it uses a much more scalable event-driven (asynchronous) architecture. This architecture uses small, but more importantly, predictable amounts of memory under load. Even if you don’t expect to handle thousands of simultaneous requests, you can still benefit from NGINX’s high-performance and small memory footprint. NGINX scales in all directions: from the smallest VPS all the way up to large clusters of servers.
What is Nginx
Nginx is an Open Source web server and uses a non-threaded, event driven architecture.
Nginx Commands
It is worth mentioning here that I have created and used a user test in this article which is having sudo access to run all below mentioned commands. You can refer to Add User to Sudoers on Ubuntu article to check how to add user into sudoers file. You can also create any user and provide sudo access to run all the below nginx commands as per your requirement.
1. Install Nginx on Ubuntu
To install Nginx on Ubuntu, you need to use sudo apt-get install nginx command. This command will check the availability of Nginx package in the repository and then download and install it.
2. Check Nginx Version
To check nginx version, you need to use sudo nginx -v command
3. Test Nginx default Config
To test Nginx default config, use sudo nginx -t or sudo service nginx configtest nginx commands. It is very important to test your configuration before starting or restarting nginx test config to avoid any unnecessary error.
4. Start Nginx Service
To start Nginx Service, you need to use sudo systemctl start nginx or sudo service nginx start command.
5. Check Nginx Status
To check nginx status after doing any changes, you need to use sudo systemctl status nginx or sudo service nginx status command.
6. Stop Nginx Service
To stop nginx service, you need to use sudo systemctl stop nginx or sudo service nginx stop command.
7. How to Restart Nginx Service
To restart nginx service, you need to use sudo systemctl restart nginx command or sudo service restart nginx .
8. How to Perform Nginx Test Reload
To reload nginx service, you need to use sudo systemctl reload nginx command or sudo service reload nginx command.
9. Check Nginx Configuration
You can check nginx configuration using sudo nginx -T command. This nginx commands will show all the current configuration in detail and exit out.
10. Log Rotate Nginx Files
If you want to log rotate Nginx files, you can use sudo service nginx rotate command.
11. Upgrade Nginx
To upgrade nginx service, you need to use sudo service nginx upgrade command.
12. Show Nginx Help
If you want to see all the supported options with nginx commands, you need to use sudo nginx -h command.