一、软件配置信息
CentOS 6.5
二、必要软件准备
检查安装pcre,openssl,gzip命令如下:
yuminstall-yzlibzlib-develpcrepcre-developensslopenssl-devel
三、创建Nginx用户与组
[root@localhostsrc]#groupaddnginx [root@localhostsrc]#useradd-r-gnginx-s/sbin/nologin-Mnginx
四、下载解压
Nginx可以从官网下载:http://nginx.org/
也可以通过命令直接下载,我的当前目录是/usr/local/src:
[root@localhostsrc]#wgethttp://nginx.org/download/nginx-1.10.1.tar.gz
解压:
[root@localhostsrc]#tarzxvfnginx-1.10.1.tar.gz [root@localhostsrc]#cdnginx-1.10.1
五、开始安装
[root@localhostsrc]#cdnginx-1.6.3 [root@localhostnginx-1.6.3]#./configure--prefix=/usr/local/nginx--sbin-path=/usr/sbin/nginx--conf-path=/usr/local/nginx/conf/nginx.conf--error-log-path=/var/log/nginx/error.log--http-log-path=/var/log/nginx/access.log--pid-path=/var/run/nginx.pid--lock-path=/var/run/nginx.lock--http-client-body-temp-path=/var/cache/nginx/client_temp--http-proxy-temp-path=/var/cache/nginx/proxy_temp--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp--http-scgi-temp-path=/var/cache/nginx/scgi_temp--user=nginx--group=nginx--with-http_ssl_module--with-http_realip_module--with-http_addition_module--with-http_sub_module--with-http_dav_module--with-http_flv_module--with-http_mp4_module--with-http_gunzip_module--with-http_gzip_static_module--with-http_random_index_module--with-http_secure_link_module--with-http_stub_status_module--with-http_auth_request_module--with-file-aio--with-http_spdy_module--with-ipv6--with-pcre ./configure\ --prefix=/usr/local/nginx\ --sbin-path=/usr/sbin/nginx\ --conf-path=/usr/local/nginx/conf/nginx.conf\ --error-log-path=/var/log/nginx/error.log\ --http-log-path=/var/log/nginx/access.log\ --pid-path=/var/run/nginx.pid\ --lock-path=/var/run/nginx.lock\ --http-client-body-temp-path=/var/cache/nginx/client_temp\ --http-proxy-temp-path=/var/cache/nginx/proxy_temp\ --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp\ --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp\ --http-scgi-temp-path=/var/cache/nginx/scgi_temp\ --user=nginx\ --group=nginx\ --with-http_ssl_module\ --with-http_realip_module\ --with-http_addition_module\ --with-http_sub_module\ --with-http_dav_module\ --with-http_flv_module\ --with-http_mp4_module\ --with-http_gunzip_module\ --with-http_gzip_static_module\ --with-http_random_index_module\ --with-http_secure_link_module\ --with-http_stub_status_module\ --with-http_auth_request_module\ --with-file-aio\ --with-http_spdy_module\ --with-ipv6\ --with-pcre [root@localhostnginx-1.6.3]#make [root@localhostnginx-1.6.3]#makeinstall
六、启动停止
启动命令:
[root@localhostnginx-1.6.3]#/usr/sbin/nginx
测试,直接用curl命令读取web信息:
[root@localhostsbin]#curl-shttp://localhost|grepnginx.com
关闭命令:
[root@localhostnginx-1.6.3]#/usr/sbin/nginx-sstop reload,当你修改配置时,用此命令不用再重启就生效了: [root@localhostnginx-1.6.3]#/usr/sbin/nginx-sreload
七、配置Nginx为系统服务
添加如下文件:
vi/etc/init.d/nginx #!/bin/sh # #nginxStartupscriptfornginx # #chkconfig:-8515 #processname:nginx #config:/etc/nginx/nginx.conf #config:/etc/sysconfig/nginx #pidfile:/var/run/nginx.pid #description:nginxisanHTTPandreverseproxyserver # ###BEGININITINFO #Provides:nginx #Required-Start:$local_fs$remote_fs$network #Required-Stop:$local_fs$remote_fs$network #Default-Start:2345 #Default-Stop:016 #Short-Description:startandstopnginx ###ENDINITINFO #Sourcefunctionlibrary. ./etc/rc.d/init.d/functions if[-L$0];then initscript=`/bin/readlink-f$0` else initscript=$0 fi sysconfig=`/bin/basename$initscript` if[-f/etc/sysconfig/$sysconfig];then ./etc/sysconfig/$sysconfig fi nginx=${NGINX-/usr/sbin/nginx} prog=`/bin/basename$nginx` conffile=${CONFFILE-/etc/nginx/nginx.conf} lockfile=${LOCKFILE-/var/lock/subsys/nginx} pidfile=${PIDFILE-/var/run/nginx.pid} SLEEPMSEC=${SLEEPMSEC-200000} UPGRADEWAITLOOPS=${UPGRADEWAITLOOPS-5} RETVAL=0 start(){ echo-n$"Starting$prog:" daemon--pidfile=${pidfile}${nginx}-c${conffile} RETVAL=$? echo [$RETVAL=0]&&touch${lockfile} return$RETVAL } stop(){ echo-n$"Stopping$prog:" killproc-p${pidfile}${prog} RETVAL=$? echo [$RETVAL=0]&&rm-f${lockfile}${pidfile} } reload(){ echo-n$"Reloading$prog:" killproc-p${pidfile}${prog}-HUP RETVAL=$? echo } upgrade(){ oldbinpidfile=${pidfile}.oldbin configtest-q||return echo-n$"Startingnewmaster$prog:" killproc-p${pidfile}${prog}-USR2 echo foriin`/usr/bin/seq$UPGRADEWAITLOOPS`;do /bin/usleep$SLEEPMSEC if[-f${oldbinpidfile}-a-f${pidfile}];then echo-n$"Gracefulshutdownofold$prog:" killproc-p${oldbinpidfile}${prog}-QUIT RETVAL=$? echo return fi done echo$"Upgradefailed!" RETVAL=1 } configtest(){ if["$#"-ne0];then case"$1"in -q) FLAG=$1 ;; *) ;; esac shift fi ${nginx}-t-c${conffile}$FLAG RETVAL=$? return$RETVAL } rh_status(){ status-p${pidfile}${nginx} } #Seehowwewerecalled. case"$1"in start) rh_status>/dev/null2>&1&&exit0 start ;; stop) stop ;; status) rh_status RETVAL=$? ;; restart) configtest-q||exit$RETVAL stop start ;; upgrade) rh_status>/dev/null2>&1||exit0 upgrade ;; condrestart|try-restart) ifrh_status>/dev/null2>&1;then stop start fi ;; force-reload|reload) reload ;; configtest) configtest ;; *) echo$"Usage:$prog{start|stop|restart|condrestart|try-restart|force-reload|upgrade|reload|status|help|configtest}" RETVAL=2 esac exit$RETVAL
修改文件权限:
chmod+x/etc/init.d/nginx
查看Nginx服务:
chkconfig--listnginx nginx0:off1:off2:on3:on4:on5:on6:off