- #!/bin/sh /etc/rc.common
- # Copyright (C) 2015 OpenWrt.org
-
- START=80
-
- USE_PROCD=1
-
- G_OPTS="daemon off;"
-
- NGINX_UTIL="/usr/bin/nginx-util"
-
- eval $("${NGINX_UTIL}" get_env)
-
- CONF=""
-
-
- nginx_init() {
- [ -z "${CONF}" ] || return # already called.
-
- [ -d /var/log/nginx ] || mkdir -p /var/log/nginx
- [ -d /var/lib/nginx ] || mkdir -p /var/lib/nginx
-
- rm -f "$(readlink "${UCI_CONF}")"
- ${NGINX_UTIL} init_lan
-
- if [ -e "${UCI_CONF}" ]
- then CONF="${UCI_CONF}"
- else CONF="${NGINX_CONF}"
- fi
-
- local message
- message="$(/usr/sbin/nginx -t -c "${CONF}" -g "${G_OPTS}" 2>&1)" ||
- {
- echo -e "${message}" | logger -t "nginx_init" -p "daemon.err"
- logger -s -t "nginx_init" -p "daemon.err" "NOT using conf file!"
- echo "show config to be used by: nginx -T -c '${CONF}'" >&2
- exit 1
- }
-
- logger -t "nginx_init" -p "daemon.info" "using ${CONF} (the test is ok)"
- }
-
-
- start_service() {
- nginx_init
-
- procd_open_instance
- procd_set_param command /usr/sbin/nginx -c "${CONF}" -g "${G_OPTS}"
- procd_set_param stdout 1
- procd_set_param stderr 1
- procd_set_param file "${CONF}" "${CONF_DIR}*.crt" "${CONF_DIR}*.key" \
- "${CONF_DIR}*.conf" "${CONF_DIR}*.locations"
- procd_set_param respawn
- procd_close_instance
- }
-
-
- reload_service() {
- nginx_init
-
- if [ "$(cat "/proc/$(cat "/var/run/nginx.pid")/cmdline")" = \
- "nginx: master process /usr/sbin/nginx -c ${CONF} -g ${G_OPTS}" ]
- then procd_send_signal nginx
- else restart
- fi
- }
-
-
- extra_command "relog" "Reopen log files (without reloading)"
- relog() {
- [ -d /var/log/nginx ] || mkdir -p /var/log/nginx
- procd_send_signal nginx '*' USR1
- }
|