This version of the page http://www.rx-support.net/index.php/article/nginx (0.0.0.0) stored by archive.org.ua. It represents a snapshot of the page as of 2012-02-07. The original page over time could change.
Установка Nginx | RX-HOST

Установка Nginx

Author admin acount on June 14, 2010 | Print | Bookmark


Nginx
— это HTTP-сервер, разработанный замечательным специалистом Игорем Сысоевым.  Сейчас nginx работает на множестве серверов, в том числе на большинстве серверов Рамблера.

Установка nginx

Переходим в /etc/:

# cd /etc/

Создаем директорию:

# mkdir nginx

Переходим в директорию /etc/nginx:

# cd nginx

Загружаем дистрибутив:

# wget http://www.sysoev.ru/nginx/nginx-0.8.50.tar.gz

Распаковываем:

# tar zxf nginx-0.8.50.tar.gz

Переходим в директорию nginx-0.8.50:

# cd nginx-0.8.50

Конфигурируем:

# ./configure --prefix=/etc/nginx  --with-http_ssl_module --with-http_realip_module --with-http_dav_module --with-http_flv_module --with-http_gzip_static_module

Собираем nginx:

# make

Устанавливаем nginx:

# make install

nginx будет установлен в каталог /etc/nginx/, директорию nginx-0.8.39 можно удалить.

Если у вас есть Nginx работает, то остановить этот процесс, используя:

sudo kill `cat /var/run/nginx.pid`

Идем дальше и создать скрипт:

sudo nano /etc/init.d/nginx

Внутри пустой место файла следующее:

#!/bin/sh
#
# nginx - this script starts and stops the nginx daemin
#
# chkconfig:   - 85 15
# description:  Nginx is an HTTP(S) server, HTTP(S) reverse \
#               proxy and IMAP/POP3 proxy server
# processname: nginx
# config:      /etc/nginx/conf/nginx.conf
# pidfile:     /etc/nginx/logs/nginx.pid

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0

nginx="/etc/nginx/sbin/nginx"
prog=$(basename $nginx)

NGINX_CONF_FILE="/etc/nginx/conf/nginx.conf"

lockfile=/var/lock/subsys/nginx

start() {
    [ -x $nginx ] || exit 5
    [ -f $NGINX_CONF_FILE ] || exit 6
    echo -n $"Starting $prog: "
    daemon $nginx -c $NGINX_CONF_FILE
    retval=$?
    echo
    [ $retval -eq 0 ] && touch $lockfile
    return $retval
}

stop() {
    echo -n $"Stopping $prog: "
    killproc $prog -QUIT
    retval=$?
    echo
    [ $retval -eq 0 ] && rm -f $lockfile
    return $retval
}

restart() {
    configtest || return $?
    stop
    start
}

reload() {
    configtest || return $?
    echo -n $"Reloading $prog: "
    killproc $nginx -HUP
    RETVAL=$?
    echo
}

force_reload() {
    restart
}

configtest() {
  $nginx -t -c $NGINX_CONF_FILE
}

rh_status() {
    status $prog
}

rh_status_q() {
    rh_status >/dev/null 2>&1
}

case "$1" in
    start)
        rh_status_q && exit 0
        $1
        ;;
    stop)
        rh_status_q || exit 0
        $1
        ;;
    restart|configtest)
        $1
        ;;
    reload)
        rh_status_q || exit 7
        $1
        ;;
    force-reload)
        force_reload
        ;;
    status)
        rh_status
        ;;
    condrestart|try-restart)
        rh_status_q || exit 0
            ;;
    *)
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
        exit 2
esac

Как инициализации файл скрипта должен иметь исполняемый разрешения.
Мы установили их вот так:

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

Теперь у нас есть базовый сценарий подготовлен, нам нужно, его добавить в  запуск по умолчанию:

sudo /sbin/chkconfig nginx on

Параметры для запуска, остановки и перезагрузки

sudo /etc/init.d/nginx start

sudo /etc/init.d/nginx stop

sudo /etc/init.d/nginx restart

sudo /etc/init.d/nginx reload

Проверить синтакси конфига:

sudo /etc/init.d/nginx status

sudo /etc/init.d/nginx configtest


Was this article helpful?

Yes No

Category: Виртуальные сервера, Выделенные сервера

Last updated on September 22, 2010 with 1231 views