tipografia para letra google fuentes fuente descargar dafont ubuntu command-line nginx

para - ubuntu dafont



¿Cómo reinicio nginx solo después de que la prueba de configuración fue exitosa en ubuntu? (6)

Cuando reinicio el servicio nginx en línea de comandos en un servidor ubuntu, el servicio falla cuando un archivo de configuración nginx tiene errores. En un servidor de varios sitios, esto anula todos los sitios, incluso los que no tienen errores de configuración.

Para evitar esto, ejecuto primero la prueba de configuración nginx:

nginx -t

después de que la prueba se ejecutó correctamente, puedo reiniciar el servicio

/etc/init.d/nginx restart

o solo recarga las configuraciones del sitio nignx sin un reinicio

nginx -s reload

¿Hay alguna manera de combinar esos dos comandos donde el comando de reinicio es condicional al resultado de la prueba de configuración?

No pude encontrar esto en línea y la documentación oficial sobre esto es bastante básica. No conozco bien Linux, así que no sé si lo que busco está justo delante de mí o no es posible en absoluto.

Estoy usando nginx v1.1.19

Cualquier ayuda en esto es apreciada.



Al menos en Debian el script de inicio de nginx tiene una función de recarga que hace:

reload) log_daemon_msg "Reloading $DESC configuration" "$NAME" test_nginx_config start-stop-daemon --stop --signal HUP --quiet --pidfile $PID / --oknodo --exec $DAEMON log_end_msg $? ;;

Parece que todo lo que necesitas hacer es llamar al service nginx reload lugar de restart ya que llama a test_nginx_config .


En realidad, hasta donde yo sé, nginx mostraría un mensaje vacío y no se reiniciará si la configuración es mala, la única manera de arruinarlo es hacer una parada nginx y luego comenzar de nuevo, se detendrá pero fallará para comenzar.


Puedes usar señales para controlar nginx.

De acuerdo con la documentación, debe enviar la señal HUP al proceso maestro de nginx.

HUP - cambiando la configuración, manteniéndose actualizado con un huso horario modificado (solo para FreeBSD y Linux), iniciando nuevos procesos de trabajo con una nueva configuración, apagado ordenado de procesos de trabajo antiguos

Consulte la documentación aquí: http://nginx.org/en/docs/control.html

Puede enviar la señal HUP al PID del proceso maestro de nginx de la siguiente manera:

kill -HUP $( cat /var/run/nginx.pid )

El comando de arriba lee el ninix PID de /var/run/nginx.pid . Por defecto, nginx pid se escribe en /usr/local/nginx/logs/nginx.pid pero puede anularse en la configuración. Compruebe su nginx.config para ver dónde guarda el PID.


Utilizo el siguiente comando para volver a cargar Nginx (versión 1.5.9) solo si una prueba de configuración fue exitosa:

/etc/init.d/nginx configtest && sudo /etc/init.d/nginx reload

Si necesita hacer esto a menudo, puede usar un alias. Yo uso lo siguiente:

alias n=''/etc/init.d/nginx configtest && sudo /etc/init.d/nginx reload''

El truco aquí lo realiza el "&&" que solo ejecuta el segundo comando si el primero fue exitoso. Puede ver here una explicación más detallada del uso del operador "&&".

Puede usar "reiniciar" en lugar de "recargar" si realmente desea reiniciar el servidor.


alias nginx.start=''sudo nginx -c /etc/nginx/nginx.conf'' alias nginx.stop=''sudo nginx -s stop'' alias nginx.reload=''sudo nginx -s reload'' alias nginx.config=''sudo nginx -t'' alias nginx.restart=''nginx.config && nginx.stop && nginx.start'' alias nginx.errors=''tail -250f /var/logs/nginx.error.log'' alias nginx.access=''tail -250f /var/logs/nginx.access.log'' alias nginx.logs.default.access=''tail -250f /var/logs/nginx.default.access.log'' alias nginx.logs.default-ssl.access=''tail -250f /var/logs/nginx.default.ssl.log''

y luego usa los comandos "nginx.reload", etc.