1.如何使用Nginx访问服务器图片

安装Nginx,修改配置nginx.conf

例如访问http://101.200.72.145/images/1.jpg

nginx会监听80端口(默认) 监听到请求路径中有/images

alias:将请求路径中的/images替换为  /home/hdh/images;并转发请求 http://101.200.72.145 /home/hdh/images/1.jpg 访问到服务器图片

alias响应的路径:配置路径+静态文件(去除location中配置的路径)

root响应的路径:配置的路径(root指向的路径)+完整访问路径(location的路径)+静态文件

autoindex on nginx打开目录浏览功能

        location /images{
                alias /home/hdh/images;
                autoindex on;
        }
        location /images{
                root /home/hdh/;
                autoindex on;
        }

2.反向代理基本配置

location /{
       proxy_pass http://127.0.0.1:8008; root html; index index.html index.htm; }

3.Nginx实现负载均衡

同样使用两个tomcat模拟两台应用服务器,端口号分别为8080 和8081

1、Nginx的负载分发策略

      Nginx 的 upstream目前支持的分配算法: 
1)、轮询 ——1:1 轮流处理请求(默认)

      每个请求按时间顺序逐一分配到不同的应用服务器,如果应用服务器down掉,自动剔除,剩下的继续轮询。 
2)、权重 ——you can you up
      通过配置权重,指定轮询几率,权重和访问比率成正比,用于应用服务器性能不均的情况。 
3)、ip_哈希算法
      每个请求按访问ip的hash结果分配,这样每个访客固定访问一个应用服务器,可以解决session共享的问题。 

2、配置Nginx的负载均衡与分发策略

      通过在upstream参数中添加的应用服务器IP后添加指定参数即可实现,如:

upstream webname {
    server 101.200.72.145:8080 weight=3;  
    server 101.200.72.145:8081 ;  
    server 101.200.72.145:8082 backup;
}

 server {
 location / {
            proxy_pass   http://tomcatserver;  
            index  index.html index.htm;
        }
}

 

其中webname是自己取的名字,最后会通过这个名字在url里访问的,像上面这个例子一样什么都不加就是默认的轮询,第一个请求过来访问第一个server,第二个请求来访问第二个server。依次轮着来。

upstream webname {
server 101.200.72.145:8080 weight 2;
server 101.200.72.145:8080 weight 1;
}

这个weight也很好理解,权重大的被访问的概率就大,上面这个例子的话,访问2次server1,访问一次server2

upstream webname {
ip_hash;
server 101.200.72.145:8080;
server 101.200.72.145:8080;
}

ip_hash的配置也很简单,直接加一行就可以了,这样只要是同一个ip过来的都会到同一台server上

然后在server节点下进行配置:

location /name {
proxy_pass http://webname/name/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}

proxy_pass里面用上面配的webname代替了原来的ip地址。

这样就基本完成了负载均衡的配置。

下面是主备的配置:

还是在upstream里面

upstream webname {
server 101.200.72.145:8080;
server 101.200.72.145:8080 backup;
}

设置某一个节点为backup,那么一般情况下所有请求都访问server1,当server1挂掉或者忙的的时候才会访问server2

upstream webname {
server 101.200.72.145:8080;
server 101.200.72.145:8080 down;
}

设置某个节点为down,那么这个server不参与负载。

4.Tomcat实现虚拟路径映射

目的:当我们的项目需要通过Tomcat访问服务器上的图片时。我们可以使用Tomcat配置虚拟映射。

在Tomcat的配置文件server.xml中配置

<Context path="/wanshang-web-protal/getImgType" docBase="/hdis/weixin/cardtypeimages"/>

path:可以理解为我们访问路径中带有的地址

docBase:可以理解为我们服务器的地址

意思为当我们访问的路径中带有/wanshang-web-protal/getImgType时会将/wanshang-web-protal/getImgType替换为/hdis/weixin/cardtypeimages。以达到我们访问服务器上图片的目的

 

 

 

posted on 2020-10-16 10:30  忆夏KhaZix  阅读(521)  评论(0编辑  收藏  举报