ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Где правильно взять /etc/in it.d/nginx?


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: Где правильно взять /etc/in it.d/nginx?
  • From: Anton Bessonov <exelib@xxxxxxxxxxxxxx>
  • Date: Sun, 13 Jun 2010 14:51:55 +0200
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:references:in-reply-to :content-type; bh=lKtjexFh2sqdJBEFWsPNjggD+z4jvtr2xr2IoZNB6VY=; b=bZ5IZeMpdXHL8qT1FyHsyM7dD0WD6OxVAhtkT2Ej+cmCLTKqSfpZesMWRD9pBdP0aR MxcAL+PzTgHZ0OUOLq41IJ+lkjJ4nnqtS0C3bJoflNGG9lKo8OZmkd7/KpZ/V3krObdp F45sCk3lwtSt4o2IEWvlbguMhofLmnZlwWCiY=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type; b=S5eKsja31vOVxLjZpNERQZzL8/jyDs7AYQ49g/A35EJxSTvWo5c3piC4BLhPGhx2+B YL2QIVXRjORMUiJdz5z16euBXsgkm7c2z++4Pq6TB+VXV4hME4cIVDVOACtiTTKT6W0x aZ88JVplUywTKW9ABI77hLbQ1EP3psrXhrlxA=
  • In-reply-to: <AANLkTil9KgAzpZz1oNSEXSACU6qzVytVOk9SocJS_rcU@xxxxxxxxxxxxxx>
  • References: <3e74e26831d990359b833cd08bc43a32.NginxMailingListRussian@xxxxxxxxxxxxxxx> <AANLkTil9KgAzpZz1oNSEXSACU6qzVytVOk9SocJS_rcU@xxxxxxxxxxxxxx>


Официального варианта не существует.

А надо бы.

Из-за отсутствия привязки server к юзверю, пришлось сделать через задний проход и модифицированный (очень простой) скрипт под дериватов дебиана в аттаче. Думаю идея понятна.
#! /bin/sh

# Description: Startup script for nginx webserver on Debian. Place in 
/etc/init.d and 
# run 'sudo update-rc.d nginx defaults', or use the appropriate command on your
# distro.
#
# Author:       Ryan Norbauer <ryan.norbauer@xxxxxxxxx>
# Modified:     Geoffrey Grosenbach http://topfunky.com

#set -e
#set -x

USER="$2"

if [[ -z "${USER}" ]]; then
        NAME=nginx
        CONFIGFILE=/usr/local/nginx/nginx.conf
        PIDFILE=/var/run/nginx.pid
else
        id $USER 2>/dev/null
        if [ $? -eq 1 ]; then
                echo "user does not exists!"
                exit
        fi
        NAME=nginx_$USER
        CONFIGFILE=/home/$USER/conf/nginx.conf
        PIDFILE=/var/run/nginx_$USER.pid
fi


PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="nginx daemon"
DAEMON=/usr/local/nginx/nginx
SCRIPTNAME=/etc/init.d/$NAME

# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0

d_start() {
  $DAEMON -c $CONFIGFILE || echo -n " already running"
}

d_stop() {
  kill -QUIT `cat $PIDFILE` || echo -n " not running"
}

d_reload() {
  kill -HUP `cat $PIDFILE` || echo -n " can't reload"
}

d_config_test() {
  $DAEMON -t -c $CONFIGFILE
}

case "$1" in
  start)
        echo -n "Starting $DESC: $NAME"
        d_start
        echo "."
        ;;
  stop)
        echo -n "Stopping $DESC: $NAME"
        d_stop
        echo "."
        ;;
  reload)
        echo -n "Reloading $DESC configuration..."
        d_reload
        echo "reloaded."
  ;;
  restart)
        echo -n "Restarting $DESC: $NAME"
        d_stop
        # One second might not be time enough for a daemon to stop, 
        # if this happens, d_start will fail (and dpkg will break if 
        # the package is being upgraded). Change the timeout if needed
        # be, or change d_stop to have start-stop-daemon use --retry. 
        # Notice that using --retry slows down the shutdown process somewhat.
        sleep 1
        d_start
        echo "."
        ;;
   conf)
        d_config_test
        ;;
  *)
          echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
          exit 3
        ;;
esac

exit 0

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.