Debian установка nginx из исходников, компиляция с дополнительными модулями

nginx2
Небольшое howto по сборке nginx из исходников.
Ставим зависимости

aptitude install build-essential libpcre3 libpcre3-dev libpcrecpp0 libssl-dev zlib1g-dev

выкачиваем nginx, мне также необходим был модуль headers-more-nginx-module

wget http://nginx.org/download/nginx-1.4.7.tar.gz
wget https://github.com/agentzh/headers-more-nginx-module/archive/v0.25.tar.gz

распаковываем наше добро

tar zxf nginx-1.4.7.tar.gz
tar zxf v0.25.tar.gz

конфигурируем

cd nginx-1.4.7
./configure     --prefix=/usr     --conf-path=/etc/nginx/nginx.conf     --error-log-path=/var/log/nginx/error.log     --http-log-path=/var/log/nginx/access.log     --pid-path=/var/run/nginx.pid     --lock-path=/var/lock/nginx.lock     --with-http_ssl_module     --user=nginx     --group=nginx     --with-http_stub_status_module     --with-http_gzip_static_module     --without-mail_pop3_module     --without-mail_imap_module     --without-mail_smtp_module    --add-module=~/headers-more-nginx-module-0.25/

через —add-module=~/headers-more-nginx-module-0.25/ — задаем путь к доп модулю

компилируем, устанавливаем

make
make install

создадим стартовый скрипт

nano /etc/init.d/nginx
#! /bin/sh
 ### BEGIN INIT INFO
# Provides:          nginx
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the nginx web server
# Description:       starts nginx using start-stop-daemon
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/nginx
NAME=nginx
DESC=nginx
test -x $DAEMON || exit 0
# Include nginx defaults if available
if [ -f /etc/default/nginx ] ; then
    . /etc/default/nginx
fi
set -e
. /lib/lsb/init-functions
case "$1" in
  start)
    echo -n "Starting $DESC: "
    start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid
        --exec $DAEMON -- $DAEMON_OPTS || true
    echo "$NAME."
    ;;
  stop)
    echo -n "Stopping $DESC: "
    start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid
        --exec $DAEMON || true
    echo "$NAME."
    ;;
  restart|force-reload)
    echo -n "Restarting $DESC: "
    start-stop-daemon --stop --quiet --pidfile
        /var/run/$NAME.pid --exec $DAEMON || true
    sleep 1
    start-stop-daemon --start --quiet --pidfile
        /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS || true
    echo "$NAME."
    ;;
  reload)
      echo -n "Reloading $DESC configuration: "
      start-stop-daemon --stop --signal HUP --quiet --pidfile /var/run/$NAME.pid
          --exec $DAEMON || true
      echo "$NAME."
      ;;
  status)
      status_of_proc -p /var/run/$NAME.pid "$DAEMON" nginx && exit 0 || exit $?
      ;;
  *)
    N=/etc/init.d/$NAME
    echo "Usage: $N {start|stop|restart|reload|force-reload|status}" >&2
    exit 1
    ;;
esac
exit 0

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

chmod +x /etc/init.d/nginx
update-rc.d -f nginx defaults

Похожие посты

Комментировать

Комментировать email не будет опубликован