Linux下Nginx安裝
系統環境:CentOS 6.5
Nginx版本:nginx-1.6.0.tar.gz
1:創建目錄
# mkdir /doiido/soft cd /doiido/soft</span>
2:安裝Nginx所需的依賴包:
# yum -y install gcc gcc-c++ openssl openssl-devel
3:安裝Nginx所需的pcre庫
把pcre-8.35.tar.gz上傳到/doiido/soft、
# tar zxvf pcre-8.35.tar.gz
cd pcre-8.35/
./configure
make && make install
cd ../ </span>
4:創建www用戶和組,創建相關目錄,并修改權限
# /usr/sbin/groupadd www
/usr/sbin/useradd -s /sbin/nologin -M -g www www
mkdir -p /doiido/web/www
chmod 777 /doiido/web/www
chown -R www:www /doiido/web/www
chmod g+s /doiido/web/www
mkdir -p /doiido/web/logs
chmod +w /doiido/web/logs
chown -R www:www /doiido/web/logs</span>
5:安裝niginx
把nginx-1.4.2.tar.gz上傳到/doiido/soft
# tar zxvf nginx-1.6.0.tar.gz
cd nginx-1.6.0
./configure --user=www --group=www --prefix=/doiido/server/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module --with-pcre=../pcre-8.35 --with-pcre-jit
make && make install </span>
6:修改 nginx.conf配置文件
# vi /doiido/server/nginx/conf/nginx.conf
</span>
user www www;
worker_processes 4;
error_log /doiido/web/logs/nginx_error.log crit;
pid logs/nginx.pid;
events{
use epoll;
worker_connections 65535;
}測試
# /doiido/server/nginx/sbin/nginx -t
nginx: the configuration file /opt/nginx/conf/nginx.conf syntax is ok nginx: configuration file /opt/nginx/conf/nginx.conf test is successful
如果顯示下面信息,即表示配置沒問題
啟動nginx服務
# /doiido/server/nginx/sbin/nginx
7:編寫nginx啟動腳本
# vi /etc/init.d/nginx
</span>
#!/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: /doiido/server/nginx/conf/nginx.conf
pidfile: /doiido/server/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="/doiido/server/nginx/sbin/nginx" prog=$(basename $nginx)
NGINX_CONF_FILE="/doiido/server/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 }
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 ;; status) rh_status ;; *) echo $"Usage: $0 {start|stop|status|restart|reload|configtest}" exit 2 esac</pre>
設置權限并添加到啟動服務列表中
# chmod 755 /etc/init.d/nginxchkconfig --add nginx
chkconfig --level 345 nginx on
service nginx start </span>
8:防火墻端口開放
# /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT/etc/rc.d/init.d/iptables save </span>
至此nginx安裝完畢