1. 程式人生 > >CentOS6.4下,Nginx安裝與配置

CentOS6.4下,Nginx安裝與配置

1、準備工作
選首先安裝這幾個軟體: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開發包的意思):

  1. # yum install -y pcre pcre-devel  
  2. # yum install -y zlib zlib-devel  
  3. # yum install -y openssl openssl-devel  

2、下載並安裝
建立目錄(nginx)並進去;然後,從官方地址(http://nginx.org/)下載,解壓,配置,編譯,安裝:
  1. # mkdir nginx && cd nginx  
  2. # wget http://nginx.org/download/nginx-1.7.3.tar.gz  
  3. # tar xzf nginx-1.7.3.tar.gz   
  4. # cd nginx-1.7.3  
  5. # ./configure  
  6. # make  
  7. # make install  
  8. # whereis nginx  
  9. nginx: /usr/local/nginx  
預設的安裝路徑為:/usr/local/nginx;跳轉到其目錄下sbin路徑下,便可以啟動或停止它了。
  1. # ./nginx -h  
  2. nginx version: nginx/1.7.3  
  3. Usage: nginx [-?hvVtq] [-s signal] [-c filename] [-p prefix] [-g directives]  
  4. Options:  
  5.   -?,-h         : this help  
  6.   -v            : show version and exit  
  7.   -V            : show version and configure options then exit  
  8.   -t            : test configuration and exit  
  9.   -q            : suppress non-error messages during configuration testing  
  10.   -s signal     : send signal to a master process: stop, quit, reopen, reload  
  11.   -p prefix     : set prefix path (default: /usr/local/nginx/)  
  12.   -c filename   : set configuration file (default: conf/nginx.conf)  
  13.   -g directives : set global directives out of configuration file  
啟動:./nginx
停止:./nginx -s stop

3、新增到系統服務
使用命令“# vi /etc/init.d/nginx”,開啟編輯器,輸入如下內容:
  1. #!/bin/sh  
  2. # chkconfig: 2345 85 15  
  3. # Startup script for the nginx Web Server  
  4. # description: nginx is a World Wide Web server.   
  5. # It is used to serve HTML files and CGI.  
  6. # processname: nginx  
  7. # pidfile: /usr/local/nginx/logs/nginx.pid  
  8. # config: /usr/local/nginx/conf/nginx.conf  
  9. PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin  
  10. DESC="nginx deamon"  
  11. NAME=nginx  
  12. DAEMON=/usr/local/nginx/sbin/$NAME  
  13. SCRIPTNAME=/etc/init.d/$NAME  
  14. test -x $DAEMON || exit 0  
  15. d_start(){  
  16.   $DAEMON || echo -n "already running"  
  17. }  
  18. d_stop(){  
  19.   $DAEMON -s quit || echo -n "not running"  
  20. }  
  21. d_reload(){  
  22.   $DAEMON -s reload || echo -n "can not reload"  
  23. }  
  24. case "$1" in  
  25. start)  
  26.   echo -n "Starting $DESC: $NAME"  
  27.   d_start  
  28.   echo "."  
  29. ;;  
  30. stop)  
  31.   echo -n "Stopping $DESC: $NAME"  
  32.   d_stop  
  33.   echo "."  
  34. ;;  
  35. reload)  
  36.   echo -n "Reloading $DESC conf..."  
  37.   d_reload  
  38.   echo "reload ."  
  39. ;;  
  40. restart)  
  41.   echo -n "Restarting $DESC: $NAME"  
  42.   d_stop  
  43.   sleep 2  
  44.   d_start  
  45.   echo "."  
  46. ;;  
  47. *)  
  48.   echo "Usage: $ScRIPTNAME {start|stop|reload|restart}" >&2  
  49.   exit 3  
  50. ;;  
  51. esac  
  52. exit 0  
儲存退出後,再使用下面的命令,使其可執行;然後,新增配置並檢視。
可用chkconfig修改其值,也可用ntsysv工具改變是否自啟動。
  1. # chmod +x /etc/init.d/nginx  
  2. # chkconfig --add nginx  
  3. # chkconfig nginx on/off  
  4. # chkconfig --list nginx  
  5. nginx 0:off 1:off 2:on 3:on 4:on 5:on 6:off