Skip to content

Скрипт загрузки Nginx

Хотя вы можете использовать командную строку для выполнения различных операций с Nginx, например, для его запуска, это все же не очень удобно, поэтому ниже описано, как настроить загрузку Nginx после его установки в Linux.

1. CentOS6.x&RedHat6.x Настройте самозагрузку Nginx

1.1 Создание скриптов управления Nginx

Сначала создайте файл nginx в каталоге /etc/init.d/ вашей системы:

vi /etc/init.d/nginx

Нажмите клавишу i и добавьте в сценарий следующее:

/bin/sh # chkconfig   
  
  
  
/bin/sh # # nginx - этот скрипт запускает и останавливает демон nginx # # chkconfig  
: - 85 15 # описание: NGINX - это HTTP(S) сервер, HTTP(S) &  
 nbsp;обратный \ # прокси и  
  
 IMAP/POP3 прокси-сервер # processname: nginx # config: /etc/nginx/nginx.  
  
 conf # config: /etc/sysconfig/nginx # pidfile: /var/run/  
  
 nginx.pid # Библиотека исходных функций. .  
  
/etc/rc.d/init.d/functions # Исходная конфигурация сети. .  
  
/etc/sysconfig/network # Проверяем работоспособность сети. [ "$NETWORKING" = &  
  
  
quot;no" ] && exit 0 nginx="/usr/sbin/nginx" prog=$(basename $nginx) NGINX_CONF_FILE=  
"/etc/nginx/nginx.conf" [ -f /etc/sysconfig/nginx ] && .  
  
  
  
 /etc/sysconfig/nginx lockfile=/var/lock/subsys/nginx make_dirs() { # создаем необходимые директории & . nbsp; user=`$nginx -V 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\)  
  
 */\1/g' -` if [ -z "`grep $user /etc/passwd`" ]; then  
  
 useradd -M -s /bin/nologin $user fi &   
 nbsp; options=`$nginx -V 2>&1 | grep 'configure arguments:'` &  
 nbsp; for opt in $options; do if [ `echo& nbsp;$opt | grep '.  
 *-temp-path'` ]; then value=`echo $opt |  
 cut -d "=" -f 2` if [ !  
 -d "$value" ]; then #&  
 nbsp;echo "создание" $value mkdir  
 -p $value && chown -R $user $value &  
  
  
  
 nbsp; fi fi done } &  
  
 nbsp; start() { [ -x $NGINX ] || exit 5 [&&  
  
 nbsp;-f $NGINX_CONF_FILE ] || exit 6 make_dirs echo -n  
  
 $"Starting $prog: " daemon $nginx -c $NGINX_CONF_FILE & nbsp; retval=$?  
  
 echo [ $retval -eq 0 ] && touch $  
  
  
  
 lockfile return $retval } stop() { echo -n&nbsp.  
  
;$"Остановка $prog: " killproc $prog -QUIT retval=$?  
  
 echo [ $retval -eq 0 ] && rm -f $  
  
  
 lockfile return $retval }restart() { configtest || return $?  
  
  
  
  
 stop sleep 1 start } reload()&&  
 nbsp;{ configtest || return $?  
  
 echo -n $"Reloading $prog: " killproc $nginx& || return $?  
 nbsp;-HUP RETVAL=$?  
  
  
  
  
  
 echo } force_reload() { перезагрузка }  
  
  
 configtest() { $nginx -t -c $NGINX_CONF_FILE }rh_status() {  
  
  
 status $prog } rh_status_q() { rh_status >/dev/null&  
  
  
  
 nbsp;2>&1 } case "$1" in start) &  
  
 nbsp; rh_status_q && exit 0 $1 &  
  
 nbsp; ;; stop) rh_status_q&nbsp  
  
  
;|| exit 0 $1 ;;; &  
  
 nbsp; restart|configtest) $1 &  
  
  
 nbsp;;;; перезагрузка) rh_status_q || exit 7 &  
  
 nbsp; $1 ;;; force-reload)  
  
  
 force_reload ;; &  
  
  
 nbsp;status) rh_status ;; &nbsp  
  
; condrestart|try-restart) rh_status_q || exit 0 &  
  
 nbsp; ;; *) echo $&&& quot;Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}" &nbsp   
  
; exit 2 esac

Содержание приведенного выше скрипта взято с официального сайта Nginx, адрес скрипта: http: //wiki.nginx.org/RedHatNginxInitScript.

Обратите внимание, что для пользовательских установок Nginx (как указано в справке) вам нужно будет изменить эти две конфигурации в скрипте в соответствии с путем установки:

  
nginx="/usr/nginx/sbin/nginx" ====>путь к исполняемому файлу nginx NGINX_CONF_FILE="/usr/nginx/conf/nginx.conf" ====& gt;Путь к конфигурационному файлу

Сохраните файл сценария, а затем установите разрешения на его выполнение:

chmod a+x /etc/init.d/nginx

Из этого сценария можно управлять службой Nginx:

  
/etc/init.d/nginx start /etc/init.d/nginx stop

1.2 Использование chkconfig для установки загрузчика

Вышеописанные шаги завершают возможность управления службой Nginx с помощью скрипта, и теперь мы можем использовать chkconfig для настройки загрузки Nginx.

Сначала добавьте службу nginx в список управления chkconfig:

chkconfig --add /etc/init.d/nginx

После настройки вы можете использовать следующие команды для настройки загрузки и других операций:

  
chkconfig nginx on #Установите загрузчик chkconfig nginx off #Остановите загрузчик  
  
service nginx start #Запустить службу Nginx service nginx stop &  
  
nbsp; #Остановить службу Nginx service nginx restart #Перезапустить службу Nginx service nginx status & nbsp; #Проверить состояние Nginx

2. CentOS7.x и RedHat7.x Настройте запуск загрузки Nginx

2.1 Создание сценариев администрирования Nginx

Сначала создайте файл nginx.service в каталоге /lib/systemd/system/ вашей системы:

vi /lib/systemd/system/nginx.service

Нажмите клавишу i и добавьте в сценарий следующее:

  
  
  
  
  
  
[Unit] Description=nginx service After=network.target [Service] Type=forking ExecStart=/usr/nginx/sbin/nginx ExecReload=/usr/nginx/  
  
  
  
sbin/nginx -s reload ExecStop=/usr/nginx/sbin/nginx -s quit PrivateTmp=true [Install] WantedBy=multi-user.target

Обратите внимание, что для пользовательских сборок Nginx (как указано в справке) необходимо изменить путь запуска Nginx "/usr/nginx/sbin/nginx" в скрипте, чтобы он соответствовал реальному пути.

Сохраните файл сценария, а затем установите разрешения на его выполнение:

chmod a+x /lib/systemd/system/nginx.service

2.2 Использование systemctl для настройки загрузки

После настройки сценария вы можете использовать следующие команды для настройки загрузки и других операций:

  
systemctl enable nginx.service #Установка загрузчика systemctl disable  
nginx.service #Отключить загрузчик systemctl start nginx.service   #Запуск службы Nginx  
nbsp; #Запуск службы Nginx systemctl stop nginx.service &nbsp  
; #Остановить службу systemctl status nginx.service  
#Просмотр текущего состояния службы systemctl list-units --type=service #Просмотр всех запущенных служб

3. условия

Если Nginx и Tomcat находятся в каталоге /home в среде Centos 8.5, а служба регистрации не запускается, вы можете поместить их в каталог /usr.