Sep 04
High scalability with Nginx, I have read some article about Nginx, which show more powerful with load balance, reverse proxy, imap, pop3 and smtp.
This post is howto install Nginx for using in our project, let’s go….
Install prerequisites :
apt-get install libpcre3 libpcre3-dev libpcrecpp0 libssl-dev zlib1g-dev
Get source package : http://sysoev.ru/nginx/nginx-0.6.32.tar.gz
Get syslog patch : http://wiki.codemongers.com/NginxModules?action=AttachFile&do=get&target=syslog.patch
tar zxf nginx-0.6.32.tar.gz cd nginx-0.6.32 patch -p1 < ../syslog.patch #which use SysLog ./configure --with-http_ssl_module --with-mail --with-mail_ssl_module --with-syslog make make install
init.d script
vi /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:/usr/local/nginx/sbin
DAEMON=/usr/local/nginx/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
case "$1" in
start)
echo -n "Starting $DESC: "
start-stop-daemon --start --quiet --pidfile /usr/local/nginx/logs/$NAME.pid \
--exec $DAEMON -- $DAEMON_OPTS
echo "$NAME."
;;
stop)
echo -n "Stopping $DESC: "
start-stop-daemon --stop --quiet --pidfile /usr/local/nginx/logs/$NAME.pid \
--exec $DAEMON
echo "$NAME."
;;
restart|force-reload)
echo -n "Restarting $DESC: "
start-stop-daemon --stop --quiet --pidfile \
/usr/local/nginx/logs/$NAME.pid --exec $DAEMON
sleep 1
start-stop-daemon --start --quiet --pidfile \
/usr/local/nginx/logs/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS
echo "$NAME."
;;
reload)
echo -n "Reloading $DESC configuration: "
start-stop-daemon --stop --signal HUP --quiet --pidfile /usr/local/nginx/logs/$NAME.pid \
--exec $DAEMON
echo "$NAME."
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
exit 1
;;
esac
exit 0
Give some permissions:
chmod +x /etc/init.d/nginx /usr/sbin/update-rc.d -f nginx defaults
Ok, already done.















