nginx 搭建简单图片服务器实现负载均衡
作者 : 不清不慎 , 来源 : https://blog.csdn.net/qq_37142346/article/details/78762711
公众号:Java小咖秀,网站:javaxks.com
在我们搭建一个网站的时候,往往有时候会加载更多的图片,如果都从 tomcat 服务器来获取静态资源,这样会增加我们服务器的负载,使得服务器运行 速度非常慢,这时我们可以使用 nginx 服务器来加载这些静态资源,这样就可以实现负载均衡,为我们的 Tomcat 服务器减压了。一般大型网站都这么干,他们有单独的图片服务器,这里我们在本地利用 nignx 来搭建一个简单的图片服务器。
一、安装 nignx
nignx 是绿色版本的,只要到官网下载解压既可启动,解压目录图如下所示:
这里我们可以通过命令行 start nignx.exe 来启动服务器,也可以通过 bat 批处理文件来启动,打开批处理文件简单处理一下就 可以启动了:
上面的两种方式都可以启动服务器,当我们启动一下服务器我们来简单测试一下,在浏览器输入 localhost 访问,你可以看见一个简单 nignx 服务器欢迎页面。
下面,我们着重讲解一下 nignx 的配置文件,在 conf 目录下,打开 nignx.conf 文件,nginx.conf 由多个块组成,最外面的块是 main,main 包含 events 和 http,http 包含多个 upstream 和多个 server,server 又包含多个 location:
main(全局设置)、server(虚拟主机设置)、upstream(负载均衡服务器设置)和 location(URL 匹配特定位置的设置)。1.main 块设置的指令将影响其他所有设置;2.server 块的指令主要用于指定主机和端口;3.upstream 指令主要用于负载均衡,设置一系列的后端服务器;4.location 块用于匹配网页位置。这四者之间的关系式:server 继承 main,location 继承 server,upstream 既不会继承其他设置也不会被继承。在这四个部分当中,每个部分都包含若干指令,这些指令主要包含 Nginx 的主模块指令、事件模块指令、HTTP 核心模块指令,同时每个部分还可以使用其他 HTTP 模块指令,例如 Http SSL 模块、HttpGzip Static 模块和 Http Addition 模块等。
通过上面的简单的讲解我们了解了一下 nignx 的配置文件,现在我们来具体看一下它的内容并且开始配置:
上面这是配置文件中的一部分,我们看一下 location 这个节点,它下面的 root 表示该站点的根目录,root html 表示根目录下有一个 html 文件夹,当你访问上面配置的域名(laocahost)时,它默认访问跟目录下的 html 文件中的 index.html 页面,这样你应该就明白了怎么样配置一个自定义的图片服务器了吧,我们可以自定一个 server 节点,将其 localhost 节点指定为我们要访问的图片地址域名,这样我们就可以轻松访问我们的静态资源了。
二、搭建图片服务器
经过上面的介绍我们应该明白了它的大概原理,下面我们来实战配置一下。首先我们这里是本地搭建,所以没有域名,这里我们可以随便一个二级域名来作为练习(比如 images.shinelon.com),我们找到 C:\Windows\System32\drivers\etc 这个目录下有一个 hosts 文件来加入映射我们的域名,加入下面的配置:
然后我们复制 nignx.conf 文件的 server 节点,改为如下配置:
上面,我们将域名改为了我们自定义的图片域名,将 root 目录改为了我们的图片存放目录(D:\images),这样我们启动 nignx 服务器就可以访问图片资源了,这里加入该目录下有一张图片为 1.jpg。当你在浏览器中输入 images.shinelon.com/1.jpg 就可以访问我们的图片资源了。
至此,我们就搭建了一个简单的图片服务器。
评论