Nginx可以用来作为静态的web资源服务器使用,下面举例说明:
环境准备
1、测试系统环境
![1339d8fa917c22b07892b2e71b272647.png](https://i-blog.csdnimg.cn/blog_migrate/5104f80a117efe60c00813bb85e30de1.jpeg)
系统环境信息
2、准备解压工具(安装目的,是为了解压下面提到的dlib包;如果有则不必安装)
yum install -y bzip2
3、提前准备静态资源,如dlib
![ad54293c5204bf6c7823376ab1474f8f.png](https://i-blog.csdnimg.cn/blog_migrate/3f9ad93bfa159fe84647b189d899590c.jpeg)
dlib包官网地址
利用wget将dlib下载到某目录,我这里是下载到了nginx安装目录下dlib目录
![397caa3f1430cc4f4f8e56ad50f2c38d.png](https://i-blog.csdnimg.cn/blog_migrate/e2d44c07d3d1491666e59f3ed0e9591d.jpeg)
wget下载静态资源dlib
![ff5a872c6e22a7be902bda510bb666cd.png](https://i-blog.csdnimg.cn/blog_migrate/d55fbe821618cc58fef7be08e65da8f2.jpeg)
解压等操作步骤
![f52b996acbb4720c1364595625891103.png](https://i-blog.csdnimg.cn/blog_migrate/0a3c0cedb53158269d59b11dfd823506.jpeg)
用的文件
4、此次试验目的:
· 将nginx作为静态服务器,输入内网地址(192.168.1.175:8080),可以访问dlib静态资源
· 学习如何设置监听端口号(listen 8080)
· 如何设置映射关系(location)
· 如何将静态资源以列表的形式,展现给用户(autoindex on)
· 如何对文本资源进行资源压缩(gzip)
· 如何限制访问带宽($limit_rate)
· 如何设置日志格式(log_format,access_log)
具体配置
操作的配置文件是nginx.conf vim conf/nginx.conf
1、设置监听端口号、设置location;
修改结果如下图所示:
![9653521f2fe3628b1082796c8d9e1833.png](https://i-blog.csdnimg.cn/blog_migrate/5016949ee8149ef031806d5b2add55ed.jpeg)
设置监听端口号
设置完成后,重新运行一下nginx服务:
![8282e0707c7f5d1ab7152e4ba2c4d657.png](https://i-blog.csdnimg.cn/blog_migrate/b7062d17cf2ac878ebbf737c10548430.jpeg)
重新运行nginx服务
此时,我们可以使用浏览器查看:
![7e564f23e7cda540d1da08a68e83ce89.png](https://i-blog.csdnimg.cn/blog_migrate/a4ab6175f9da16de872d5a5e3672b225.jpeg)
查看静态资源
看到这个页面,就说明我们第一阶段成功了。 此时,如果我们按一下F12进入调试阶段,如下图所示:
![77b16abbd75106121b3eb1a19d742f9e.png](https://i-blog.csdnimg.cn/blog_migrate/2f7c8f3ad2aad348afaf4590676c35da.jpeg)
进入调试页面
2、添加gzip压缩功能
打开nginx.conf配置文件,修改里面的属性,如下图所示:
![08f45b27644d9d6a9742b389af0f022d.png](https://i-blog.csdnimg.cn/blog_migrate/eca1787b957164289197ed5ecc4e3ea5.jpeg)
配置gzip功能
重新加载nginx服务:sbin/nginx -s reload 重新打开页面,查看nginx返回的信息大小;
![a80922e4f51e3ca85e6c08fd778fcdd7.png](https://i-blog.csdnimg.cn/blog_migrate/ef9a8321f36756593db9f5898b1b6e65.jpeg)
查询返回信息大小
查看请求头信息:
![7b31d28123a435db23a205847c8ccd02.png](https://i-blog.csdnimg.cn/blog_migrate/5bf8b8a6f9cca6198e951683d5bd4614.jpeg)
查看是否采用了gzip功能
3、如何将一个文件夹以及文件夹内的文件,分享给用户,让用户来决定使用那些文件呢?比如说,将dlib目录的文件,分享给用户?(就是共享静态资源文件)
这种常用的场景,nginx提供了autoindex模块, 下图是autoindex模块的说明:
![3124e08913c0a36feeb091dfc38794e3.png](https://i-blog.csdnimg.cn/blog_migrate/f8394c159e7ea849786b77eb67d50c6e.jpeg)
autoindex官网说明-1
![14da65bb5d5058c2786a6a1e5ae4d8ce.png](https://i-blog.csdnimg.cn/blog_migrate/3eb2933132d0383a70b3579e534137a3.jpeg)
autoindex官网说明-2
下面是修改nginx.conf后的内容:
![6d8906d0d68fe0cdea1f0968124744b8.png](https://i-blog.csdnimg.cn/blog_migrate/76a61418c48fe0be147e450c8bcc7641.jpeg)
设置autoindex模块
![a2129f7d890550fe3430014fc4e6793d.png](https://i-blog.csdnimg.cn/blog_migrate/9f279f0cdd96fc8b06127ea2ea349e21.jpeg)
重新加载nginx服务
接下来,通过页面,进行验证:
![d130e2480cec28e6754464ab03f441f5.png](https://i-blog.csdnimg.cn/blog_migrate/41a4ec010ac21ab3d761eba611ca87f9.jpeg)
验证autoindex功能-1
![e729c80c31f9113c47bd9f617a9244b4.png](https://i-blog.csdnimg.cn/blog_migrate/3d386730f7e40dc0f9247212a07f5d8a.jpeg)
验证autoindex功能-2
4、如何设置带宽呢?
因为我们的公网带宽,是非常有限的,当有很多并发用户使用我们的带宽时,会形成一个增强关系;
此时,可能会有一个场景:当用户访问某个大文件的时候,要限制它的速度,以期望分离出一些带宽,从而可以让用户访问一些必要的小文件; 那么如何实现呢?
使用set命令,以及内置的一些变量 来实现: 修改后的配置文件nginx.conf如下:
![6355d3274d24a9c9f07157224032df5b.png](https://i-blog.csdnimg.cn/blog_migrate/b876e24f2f4d792306f0fb3e13d6a256.jpeg)
设置带宽
需要重新加载nginx服务:sbin/nginx -s reload
那么,如何查看nginx,提供了哪些内置的变量呢?
![f154c6aac6a6387aef03e24a7b8a1323.png](https://i-blog.csdnimg.cn/blog_migrate/0c07bc5445d478237e73831bbcf82c90.jpeg)
内置变量查看-1
![5ad0a51a2414ddf5080866e5130ea6f6.png](https://i-blog.csdnimg.cn/blog_migrate/8fa857d9cd9198e84e086c8f13b9e7f6.jpeg)
内置变量查看-2
![5140670658f34d7417154dabf0be5778.png](https://i-blog.csdnimg.cn/blog_migrate/7cd41dd18eef7668702f0512575df365.jpeg)
内置变量查看-3
接下来,通过重新访问页面,来查看访问速度是否变慢了? 重新访问页面,查看响应速度
![02912215c90879c47c547978f6dc9f6c.png](https://i-blog.csdnimg.cn/blog_migrate/7e78502a3b830eedb8aac0e677d39857.jpeg)
查看页面-1
![b7a9c518accb3dd020d8a424c364e1ab.png](https://i-blog.csdnimg.cn/blog_migrate/d260b4ff34c6941fa31b72c8339f2656.jpeg)
查看页面-2
5、如何记录access日志?
使用的命令是log_format,
![0ff672d9326498d8efb723259ddae2b4.png](https://i-blog.csdnimg.cn/blog_migrate/af5d88e7ef2fe08d12d2b1168704937b.jpeg)
设置log_format以及access_log
![22d8dd3206bebd5f8db0391f51adf4ac.png](https://i-blog.csdnimg.cn/blog_migrate/c0cf44a0ece2c6f8a05d9957b04cec67.jpeg)
重新加载服务,查看日志格式
以上就是搭建静态web资源服务器的常用方法和基本流程;