• Nginx从安装到简单使用


    一.什么是Nginx:

      Nginx是一个高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务。

    二.Nginx作用:

      反向代理,集群,虚拟服务器,负载均衡,动静分离,解决跨域问题等

    三.安装Nginx:

      1.链接 https://nginx.org/en/download.html,如下

        

      2.linux和windows版本下载完后解压(windows版本解压即可)

      以linux为例,解压后得到

        

      3.进入文件夹后可以看到目录

        

      4.执行

    ./configure

      5.如果出现错误如下,则

        

          (1)安装编译工具及库文件

    yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

          (2)安装PCRE,链接https://sourceforge.net/projects/pcre/files/pcre/

            下载PRCE安装包并解压,例如下图

            

            进入解压后的文件夹,找到configure并执行

    cd prce-8.43.tar.gz
    ./configure

            安装并查看prce版本

    make && make install
    pcre-config --version

      6.再次进入nginx-1.14.2文件夹,执行

    ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.43

      7.再执行make(注意上面那行代码,这里默认会去找/usr/local/src/ 下的prce-8.43文件夹),然后make install完成安装。

      8.查看nginx版本(上面指定的目录)

    /usr/local/webserver/nginx/sbin/nginx -v

      例如

        

      9.启动nginx,进入第6步中--prefix所指定的文件夹中,再进入sbin文价夹中,执行./nginx

        (在nginx文件夹中重启是./nginx -s reopen)

      10.查看nginx是否启动,例如

        

      nginx默认端口是80,所以直接访问ip地址,例如下图所示,即可知nginx启动成功

        

    四.使用Nginx

       

      1.静态资源文件夹里的文件可以直接在外部访问,例如

        

      2.实现反向代理(可以不暴露真实IP地址)

        修改nginx.conf配置文件

          

        注意:上面那个箭头指向的地址,必须在主机hosts文件中设置地址映射(域名解析),如下图

          

      重新加载配置文件

    ./nginx -s reload

      测试:

        

      如果反向代理没有成功,可以查看log日志,找到并进入logs文件夹,输入

    cat error.log

      例如下图

        

      如果发现正常启动成功,却没有成功配置反向代理。可以看看是否是自己修改了正确的配置文件(注意,nginx解压后的conf文件夹中有一个配置文件,而nginx启动目录下的文件夹中有一个nginx.conf配置文件,还有一个nginx.conf.default配置文件,可以试着将三个配置文件都修改试试,如果是按照上面安装步骤,应该是只修改的是/usr/local/webserver/nginx/conf中的nginx.conf)

      3.实现集群(使用nginx实现负载均衡)

        负载均衡算法: 

          轮询机制:在配置文件http中添加 (请求会轮流转发到129和130两个服务器的tomcat服务器)

    upstream backserver { 
        server 192.168.2.129:8080; 
        server 192.168.2.130:8080; 
    } 

          注意:proxy_pass指向的是backserver ,如http://backserver

          权重(比例分配):

    upstream backserver { 
        server 192.168.2.129:8080 weight=10; //129访问10次,130访问一次
        server 192.168.2.130:8080 weight=1; 
    } 

          IP绑定:(随机绑定一个,而且绑定后一个ip地址就固定访问一个服务器了,可以解决session共享问题,可一旦该服务器挂了,会出现数据丢失)

    upstream backserver { 
        ip_hash; 
        server 192.168.2.129:8080; 
        server 192.168.2.130:8080; 
    } 

      4.Nginx宕机容错机制

        通过上述安装的Nginx默认是开启宕机容错机制的,比如说上面集群中server 192.168.2.129:8080挂掉,它会自动找130的服务器

        如果想要添加宕机容错规则的话,可以在配置文件中的proxy_pass下面添加

    proxy_connect_timeout 5; #最大连接时间
    proxy_send_timeout 5; #最大发送时间
    proxy_read_timeout 5; #最大读取时间
  • 相关阅读:
    An Introduction to the Linuxbased Assignments
    [读书笔记]Binary Hancks(1)
    haneWIN NFS Server
    [读书笔记]Binary Hancks(2) livepatch在X86下的实践
    CTNG编译错误以及解决办法
    [转]ucLinux下sqlite数据库移植全攻略
    程序员该有的艺术气质—SOLID原则
    Httpclient远程调用WebService示例(Eclipse+httpclient)
    四种生成和解析XML文档的方法详解(介绍+优缺点比较+示例)
    全网首发:原创SQL数据库同步工具
  • 原文地址:https://www.cnblogs.com/ywb-articles/p/10686673.html
Copyright © 2020-2023  润新知