• Nginx安装与升级(包括虚拟主机)


    Nginx WEB服务器最主要就是各种模块的工作,模块从结构上分为核心模块、基础模块和第三方模块,其中三类模块分别如下:

              核心模块:HTTP模块、EVENT模块和MAIL模块等;

              基础模块:HTTP Access模块、HTTP FastCGI模块、HTTP Proxy模块和HTTP Rewrite模块;

              第三方模块:HTTP Upstream Request Hash模块、Notice模块和HTTP Access Key模块、Limit_req模块、Upstream check module等;

    Nginx的模块从功能上分为如下三类。

             Handlers(处理器模块):此类模块直接处理请求,并进行输出内容和修改headers信息等操作,Handlers处理器模块一般只能有一个;

             Filters (过滤器模块):此类模块主要对其他处理器模块输出的内容进行修改操作,最后由Nginx输出;

             Proxies (代理类模块):此类模块是Nginx的HTTP Upstream之类的模块,这些模块主要与后端一些服务比如FastCGI等进行交互,实现服务代理和负载均衡等功能。

           Nginx由Nginx内核和模块组成,其中内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端的请求映射到一个location block,而location是Nginx配置中的一个指令,用于访问的URL匹配,而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作。

    1、安装nginx

    yum install pcre-devel pcre -y
    cd /usr/src
    wget -c http://nginx.org/download/nginx-1.12.0.tar.gz 
    tar -xzf nginx-1.12.0.tar.gz
    #进入解压目录,然后sed修改Nginx版本信息为JWS
    cd nginx-1.12.0
    sed -i -e 's/1.12.0//g' -e 's/nginx\//JWS/g' -e 's/"NGINX"/"JWS"/g' src/core/nginx.h #预编译Nginx useradd www ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module make && make install
    #检查nginx配置文件是否正确,然后启动nginx
    /usr/local/nginx/sbin/nginx -t
    /usr/local/nginx/sbin/nginx 

    2、升级nginx

    wget http://www.nginx.org/download/nginx-1.14.0.tar.gz 
    tar  -xvf  nginx-1.14.0.tar.gz 
    cd nginx-1.14.0 
    ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module 
    make 
    #备份旧版本的nginx可执行文件,复制新版本的nginx这行文件
    mv /usr/local/nginx/sbin/nginx  /usr/local/nginx/sbin/nginx.old 
    cp    nginx-1.14.0/objs/nginx   /usr/local/nginx/sbin/
    #测试新版本nginx是否正常
    /usr/local/nginx/sbin/nginx -t
    #平滑重启nginx
    kill -QUIT `cat /usr/local/nginx/log/nginx.oldbin` 
    #验证nginx是否升级成功
    /usr/local/nginx/sbin/nginx  -V显示最新编译的版本信息即可。

     3、 Nginx虚拟主机实战

    在真实的企业服务器环境中,为了充分利用服务器的资源,单台Nginx WEB服务器同时会配置N个网站,也可称之为配置N个虚拟域名的主机,即多个域名对应同一个80端口。

    在Nginx.conf中加入server代码,Nginx虚拟主机完整代码如下:

    worker_processes  1;
    events {
        worker_connections  1024;
    }
    http {
        include       mime.types;
        default_type  application/octet-stream;
        sendfile        on;
        keepalive_timeout  65;
    #virtual hosts config 2017/5/18
    server {
            listen       80;
            server_name  www.jf1.com;
            access_log  logs/jf1.access.log;
            location / {
                root   html/jf1;
                index  index.html index.htm;
            }
    }
    server {
            listen       80;
            server_name  www.jf2.com;
            access_log  logs/jf2.access.log;
            location / {
                root   html/jf2;
                index  index.html index.htm;
            }
    
     }
    }

    创建两个不同的目录mkdir -p /usr/local/nginx/html/{jf1,jf2},然后分别在两个目录创建两个不同的index.html网站页面即可。通过Windows客户端配置hosts绑定IP与两个域名的对应关系,在IE浏览器访问测试效果。

  • 相关阅读:
    MVC案例之新增与修改Customer
    MVC案例之模糊查询与删除
    MVC案例之多个请求对应一个servlet
    MVC案例
    MVC设计模式-查询与删除
    JSP指令 & 中文乱码问题
    域对象的作用范围 & 请求的转发和重定向
    JSP
    HttpServlet
    istio-ingress网关安全
  • 原文地址:https://www.cnblogs.com/deny/p/9968859.html
Copyright © 2020-2023  润新知