ubuntu 上 nginx 源碼安裝


安裝腳本:

install_nginx.sh


#!/bin/bash
#create by lhb
#install nginx
#download softpackage
wget ftp://ftp.openssl.org/source/openssl-1.0.0k.tar.gz
wget http://down1.chinaunix.net/distfiles/zlib-1.2.7.tar.gz
wget fossies.org/linux/misc/pcre-8.35.tar.gz
wget http://nginx.org/download/nginx-1.4.0.tar.gz
#start unpack and install
tar zxvf zlib-1.2.7.tar.gz
cd zlib-1.2.7/
./configure --prefix=/usr/local
make
make install
cd ..
tar zxvf openssl-1.0.0k.tar.gz
cd openssl-1.0.0k/
./config --prefix=/usr/local --openssldir=/usr/local/ssl
make clean
make
make install
cd ..
tar zxvf pcre-8.35.tar.gz
mkdir /usr/local/nginx
tar zxvf nginx-1.4.0.tar.gz
cd nginx-1.4.0
./configure  \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--with-http_ssl_module \
--with-http_dav_module \
--with-http_realip_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-mail \
--with-mail_ssl_module \
--with-pcre=../pcre-8.35 \
--with-zlib=../zlib-1.2.7 \
--with-openssl=../openssl-1.0.0k \
--with-debug \
--http-client-body-temp-path=/var/tmp/nginx/client \
--http-proxy-temp-path=/var/tmp/nginx/proxy \
--http-fastcgi-temp-path=/var/tmp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
--http-scgi-temp-path=/var/tmp/nginx/scgi
make
make install

nginx啓動腳本

nginx_init

#! /bin/sh
### BEGIN INIT INFO
# Provides:          nginx
# Required-Start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# 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/local/nginx/sbin/nginx
NAME=nginx
DESC=nginx
DAEMON_OPTS=''
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
#test_nginx_config() {
#  if $DAEMON -t $DAEMON_OPTS
#  then
#    return 0
#  else
#    return $?
#  fi
#}
case "$1" in
  start)
        echo -n "Starting $DESC: "
        start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
                --exec $DAEMON || 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 || 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 $?
        ;;
  *)
        echo "Usage: $NAME {start|stop|restart|reload|force-reload|status}" >&2
        exit 1
        ;;
esac
exit 0



開機自啓動配置:

cp nginx_init /etc/init.d/
update-rc.d nginx_init defaults


參考:http://my.oschina.net/chenlei123/blog/128299

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章