Презареждане вместо рестартиране
Презареждането указва на NGINX да прочете конфигурацията отново. Стартират се нови работни процеси, а старите довършват отворените си заявки, така че посетителите обикновено не забелязват нищо. Ако новата конфигурация не може да се приложи, NGINX продължава да работи със старата. Рестартирането първо спира услугата и така прекъсва връзките, а при грешна конфигурация тя може да не се стартира отново.
Архивирайте файла, който променяте
Преди редактиране създайте копие до файла с дата в името. Не оставяйте копия в директория, която NGINX зарежда чрез шаблон като conf.d/*.conf или sites-enabled/*, защото ще зареди и тях. В Debian и Ubuntu редактирайте файла в sites-available; записът в sites-enabled обикновено е само връзка към него.
sudo cp -a /etc/nginx/sites-available/example.conf /root/example.conf.$(date +%Y%m%d-%H%M%S)Първо проверка, после презареждане
nginx -t проверява синтаксиса и файловете, към които препраща конфигурацията, например сертификатите. Използвайте nginx -T, за да видите пълната конфигурация след включването на допълнителните файлове. Презареждайте само при успешна проверка; свързването на командите с && гарантира това. Проверката не може да установи дали конфигурацията прави това, което сте възнамерявали, затова след това отворете уебсайта.
sudo nginx -t && sudo systemctl reload nginx
sudo nginx -T | less
curl -I https://example.com/Когато нещо се обърка
Възстановете архивното копие, проверете отново и презаредете. Ако услугата е спряла, логът за грешки и журналът ще покажат защо. Потърсете съобщения за вече зает порт, липсващ сертификат или дублирано име на сървър.
sudo cp -a /root/example.conf.20261031-120000 /etc/nginx/sites-available/example.conf
sudo nginx -t && sudo systemctl reload nginx
sudo journalctl -u nginx -n 50 --no-pager
sudo tail -n 50 /var/log/nginx/error.logКакво не обхваща презареждането
Дълготрайните връзки като WebSockets остават при старите работни процеси, докато приключат, така че старите процеси може да работят още известно време и да използват допълнителна памет. Обновяване на пакет може самостоятелно да рестартира услугата. Първо изпробвайте по-големите промени на тестов сървър, включително сертификатите и пренасочванията.
NGINX Manager в CH-J Server Manager
NGINX Manager редактира конфигурационни файлове в управляваните директории на NGINX на Linux сървъри, до 512 KiB на файл. При запис приложението създава архивно копие със суфикс .chj-backup-, изпълнява nginx -t и запазва промяната само след успешна проверка. Презареждането изисква изричното ви потвърждение и изпълнява проверката отново, преди да започне. Активираната символна връзка не се заменя; редактирайте съответния файл в sites-available.