• Nginx


    1.http服务器

    2.虚拟主机

    3.反向代理,负载均衡

    安装nginx

    配置虚拟主机:

    /usr/local/nginx/conf/nginx.conf

    一个server就是一个虚拟主机

    1.通过端口访问

    server {
            listen       80;
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                root   html;
                index  index.html index.htm;
            }
        }
       server {
            listen       81;
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                root   html;
                index  index.html index.htm;
            }
        }

    2.共用80端口,通过域名访问

    server {
            listen       80;
            server_name  www.jd.com;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                root   html;
                index  index.html index.htm;
            }
        }
       server {
            listen       80;
            server_name  www.taobao.com;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                root   html;
                index  index.html index.htm;
            }
        }
    

      

    反向代理:

    启动两个tomcat:

    upstream tomcat1 {
    	server 192.168.25.148:8080;
        }
        server {
            listen       80;
            server_name  www.sina.com.cn;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                proxy_pass   http://tomcat1;
                index  index.html index.htm;
            }
        }
        upstream tomcat2 {
    	server 192.168.25.148:8081;
        }
        server {
            listen       80;
            server_name  www.sohu.com;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                proxy_pass   http://tomcat2;
                index  index.html index.htm;
            }
        }
    

      

    负载均衡:

    再启动一个tomcat,修改端口为8082,

    访问www.sohu.com会轮询访问 weight=2的请求次数越多

        upstream tomcat2 {
    	server 192.168.25.148:8081;
            server 192.168.25.148:8082 weight=2;
        }
        server {
            listen       80;
            server_name  www.sohu.com;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                proxy_pass   http://tomcat2;
                index  index.html index.htm;
            }
        }   
    

      

        server {

            listen       80;

            server_name  localhost;

     

            #charset koi8-r;

     

            #access_log  logs/host.access.log  main;

     
     

    Htmlnginx安装目录下的html目录

     

     

            location / {

                root   html;

                index  index.html index.htm;

            }

        }

    4、后续问题

    如果关了tomcat1,再多次刷新页面,接下来出现的就会都是tomcat2的页面,但是时而快时而慢。这其中原因是当如果nginx将请求转发到tomcat2时,服务器会马上跳转成功,但是如果是转到tomcat1,因为tomcat1已经关闭了,所以会出现一段等待响应过程的过程,要等它失败后才会转到tomcat2。
    而这个等待响应的时间我们是可以配置的。

    这个时间由以下3个参数控制:
    proxy_connect_timeout:与服务器连接的超时时间,默认60s
    fail_timeout:当该时间内服务器没响应,则认为服务器失效,默认10s
    max_fails:允许连接失败次数,默认为1

    等待时间 = proxy_connect_timeout + fail_timeout * max_fails

    如果我这样配置的话,只需等待6秒就可以了。

  • 相关阅读:
    nvidia-smi电源显示ERR (Pwr:Usage ERR)
    阿里云windows安装ftp
    ansible常用模块
    ansible playbook
    ansible Inventory
    ansible安装
    ansible命令
    ansible配置文件
    js插件中提示框含有 或者<br/>显示不成换行怎么办,改样式
    [转] react项目安装及运行
  • 原文地址:https://www.cnblogs.com/zhoucx66/p/9269700.html
Copyright © 2020-2023  润新知