一、準備工做
選首先安裝這幾個軟件:GCC,PCRE(Perl Compatible Regular Expression),zlib,OpenSSL。
Nginx是C寫的,須要用GCC編譯;Nginx的Rewrite和HTTP模塊會用到PCRE;Nginx中的Gzip用到zlib;
用命令「# gcc」,查看gcc是否安裝;若是出現「gcc: no input files」信息,說明已經安裝好了。
不然,就須要用命令「# yum install gcc」,進行安裝了!一路可能須要屢次輸入y,進行確認。
安裝好後,能夠再用命令「#gcc」測試,或者用命令「# gcc -v」查看其版本號。
一樣方法,用以下命令安裝PCRE,zlib,OpenSSL(其中devel,是develop開發包的意思):nginx
# yum install -y pcre pcre-devel # yum install -y zlib zlib-devel # yum install -y openssl openssl-devel
二、下載並安裝
建立目錄(nginx)並進去;而後,從官方地址(http://nginx.org/)下載,解壓,配置,編譯,安裝:編輯器
# mkdir nginx && cd nginx # wget http://nginx.org/download/nginx-1.7.3.tar.gz # tar xzf nginx-1.7.3.tar.gz # cd nginx-1.7.3 # ./configure # make # make install # whereis nginx nginx: /usr/local/nginx
默認的安裝路徑爲:/usr/local/nginx;跳轉到其目錄下sbin路徑下,即可以啓動或中止它了。ide
# ./nginx -h nginx version: nginx/1.7.3 Usage: nginx [-?hvVtq] [-s signal] [-c filename] [-p prefix] [-g directives] Options: -?,-h : this help -v : show version and exit -V : show version and configure options then exit -t : test configuration and exit -q : suppress non-error messages during configuration testing -s signal : send signal to a master process: stop, quit, reopen, reload -p prefix : set prefix path (default: /usr/local/nginx/) -c filename : set configuration file (default: conf/nginx.conf) -g directives : set global directives out of configuration file
啓動:./nginx
中止:./nginx -s stop
三、添加到系統服務
使用命令「# vi /etc/init.d/nginx」,打開編輯器,輸入以下內容:工具
#!/bin/sh # chkconfig: 2345 85 15 # Startup script for the nginx Web Server # description: nginx is a World Wide Web server. # It is used to serve HTML files and CGI. # processname: nginx # pidfile: /usr/local/nginx/logs/nginx.pid # config: /usr/local/nginx/conf/nginx.conf PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DESC="nginx deamon" NAME=nginx DAEMON=/usr/local/nginx/sbin/$NAME SCRIPTNAME=/etc/init.d/$NAME test -x $DAEMON || exit 0 d_start(){ $DAEMON || echo -n "already running" } d_stop(){ $DAEMON -s quit || echo -n "not running" } d_reload(){ $DAEMON -s reload || echo -n "can not reload" } case "$1" in start) echo -n "Starting $DESC: $NAME" d_start echo "." ;; stop) echo -n "Stopping $DESC: $NAME" d_stop echo "." ;; reload) echo -n "Reloading $DESC conf..." d_reload echo "reload ." ;; restart) echo -n "Restarting $DESC: $NAME" d_stop sleep 2 d_start echo "." ;; *) echo "Usage: $ScRIPTNAME {start|stop|reload|restart}" >&2 exit 3 ;; esac exit 0
保存退出後,再使用下面的命令,使其可執行;而後,添加配置並查看。
可用chkconfig修改其值,也可用ntsysv工具改變是否自啓動。測試
# chmod +x /etc/init.d/nginx # chkconfig --add nginx # chkconfig nginx on/off # chkconfig --list nginx nginx 0:off 1:off 2:on 3:on 4:on 5:on 6:off