环境:CentOS-6.4-x86_64

解压:

[root@centos ~]#tar -zxvf nginx-1.0.11.tar.gz -C /usr/local/src

创建组:

[root@centos~]# groupadd -r nginx

[root@centos ~]#useradd -r -g nginx -s /bin/nologin -M nginx

编译以及安装

[root@centosnginx-1.0.11]#./configure \

               --conf-path=/etc/nginx/nginx.conf \

               --error-log-path=/var/log/nginx/error.log \

               --http-log-path=/var/log/nginx/access.log \

               --pid-path=/var/run/nginx/nginx.pid \

               --lock-path=/var/lock/nginx.lock \

               --user=nginx \

               --group=nginx \

               --with-http_ssl_module \

               --with-http_flv_module \

               --with-http_stub_status_module \

               --with-http_gzip_static_module \

               --http-client-body-temp-path=/var/tmp/nginx/client/ \

               --http-proxy-temp-path=/var/tmp/nginx/proxy/ \

               --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/\

               --with-pcre

                           

[root@centosnginx-1.0.11]# make && make install

编辑脚本

[root@centos init.d]# vim nginx

    #!/bin/bash

    prog=/usr/local/nginx/sbin/nginx

    lockfile=/var/lock/nginx.lock

    . /etc/init.d/functions

    start(){

    if [ -e $lockfile ];then

       echo "the nginx  is started" && exit

       else

       echo -n "nginx server is starting... "

       sleep 1

       $prog && echo "ok" && touch $lockfile ||echo "fail"

    fi

  }

   stop(){

    if [ ! -e $lockfile ];then

        echo "the nginx  is stoped" && exit

        else

        echo -n "the nginx  is stoping... "

        sleep 1

        killproc nginx && echo "ok" && rm -rf $lockfile ||echo "[ fail ]"

     fi

  }

   configtest() {

       $prog -t

   }

  case $1 in

   start)

   start

        ;;

   stop)

   stop

        ;;

   configtest)

   configtest

        ;;

   *)

   echo "USAGE:start|stop|configtest"

        ;;

   esac

测试

[root@centosnginx-1.0.11]# service nginx configtest

nginx: theconfigtest file /etc/nginx/nginx.conf syntax is ok

nginx:configtest file /etc/nginx/nginx.conf test is successful

[root@centosnginx-1.0.11]# service nginx start      

nginx serverisstarting... [ ok]

[root@centosnginx-1.0.11]# netstat -tupln |grep 80

tcp        0     0 0.0.0.0:80                 0.0.0.0:*                   LISTEN      4363/nginx          

wKiom1LkW4GDBIznAABKjsxsI3Q389.png

重定向

[root@centos ~]#vim /etc/nginx/nginx.conf

wKioL1LkXDfB6Dj7AAAMmdDI8OU440.png

重新启动nginx,然后打开浏览器,输入一个关于bmp的地址,系统里面本身是没有的wKiom1LkXRXSmTAkAABX6fGZTkg692.png


测试成功!



反向代理

首先把另外开一台虚拟机,地址是192.168.11.3把需要的都配置好,然后在/var/www/html下建一个文件,看在本台机上能否访问到这个文件

wKioL1LkbKfTh50xAAASVBL3UDM501.png

配置本机中nginx

wKiom1LkbPTBCDJhAAAFvYdeP5k287.png

wKiom1LkbP6jAgXKAAAMQq-hnKw712.png

重新启动,然后通过浏览器输入:

wKioL1LkbRPhuNBlAABBq6Ikbi0924.png

测试成功!




负载均衡

后台有两台服务器,分别有两个小的测试页面,一个是192.168.11.2 一个是192.168.11.3  然后用代理服务器(地址是192.168.11.2)用轮询的方式看是否能访问到

为了不影响测试,先把原来的nginx去掉,用一个低版本的nginx,因为高版本的nginx在做的时候会出现很多问题

wKioL1LkdhrSOImVAAAMCEX0A3U654.png

解压补丁文件

wKiom1LkdoCxh4QiAAAH9xD6SO8231.png

wKioL1Lkdm7DBPn0AAAI4q4rMnw105.png

开始打补丁

wKiom1LkdrOQtnaNAAAK5TYygdg668.png

编译以及安装

[root@centos nginx-1.0.11]# ./configure\

               --conf-path=/etc/nginx/nginx.conf \

               --error-log-path=/var/log/nginx/error.log \

               --http-log-path=/var/log/nginx/access.log \

               --pid-path=/var/run/nginx/nginx.pid \

               --lock-path=/var/lock/nginx.lock \

               --user=nginx \

               --group=nginx \

               --with-http_ssl_module \

               --with-http_flv_module \

               --with-http_stub_status_module \

               --with-http_gzip_static_module \

               --http-client-body-temp-path=/var/tmp/nginx/client/ \

               --http-proxy-temp-path=/var/tmp/nginx/proxy/ \

               --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/\

               --with-pcre\

                   --add-module=/tmp/healthcheck_nginx_upstreams-master/

wKioL1LkeW_SeATtAAAGQ_dWZHU094.png

配置文件

wKioL1LkgEuDaheiAAAFpxhOjW0308.png

wKiom1LkgIGQqWBxAAATuGybiH8070.png

wKioL1LkgGniV_sjAAALeDwFPq8526.png

重新启动

wKiom1LkhWbzDfoVAABDEHiCpxY344.png

wKioL1LkhXXwge3SAAA-nPcfIwc388.png

测试成功!

除了轮询外,还可以修改权重等方法来实现服务器的负载均衡,这里就不再详细说明了,可以到nginx的官网上,上面有许多介绍nginx的使用方法!