kumquat-buildroot/package/nginx/S50nginx
Thomas Claveirole 23094a0df9 nginx (S50nginx): Fix stop, reload, restart. Add force-reload.
Fix package/nginx/S50nginx:

* On stop, use start-stop-daemon -R 1 to wait for the nginx processes
  to actually stop.  This fixes a race condition with restart, where
  nginx fails to restart because start is called too early
  w.r.t. stop.  (This only works with Debian's start-stop-daemon,
  however BusyBox's start-stop-daemon does not fail when given -R; it
  just ignores the argument silently).

* Implement reload with an actual reload instead of a restart.

* Add force-reload.

Signed-off-by: Thomas Claveirole <thomas.claveirole@green-communications.fr>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-09-27 00:12:55 +02:00

34 lines
676 B
Bash
Executable File

#!/bin/sh
#
# Start/stop nginx
#
NGINX=/usr/sbin/nginx
PIDFILE=/var/run/nginx.pid
case "$1" in
start)
echo "Starting nginx..."
mkdir -p /var/log/nginx /var/tmp/nginx
start-stop-daemon -S -x "$NGINX" -p "$PIDFILE"
;;
stop)
echo "Stopping nginx..."
# Use -R 1 to wait for nginx to actually stop. Useful so
# restart has no race condition. Note that BusyBox knows
# about -R but ignores it silently.
start-stop-daemon -K -x "$NGINX" -p "$PIDFILE" -R 1 -o
;;
reload|force-reload)
echo "Reloading nginx configuration..."
"$NGINX" -s reload
;;
restart)
"$0" stop
"$0" start
;;
*)
echo "Usage: $0 {start|stop|restart|reload|force-reload}"
exit 1
esac