当前位置: 首页 > news >正文

用Nginx搭建一个可用的静态资源Web服务器

sudo wget http://dlib.net/files/dlib-19.24.tar.bz2下载需要的文件。
在这里插入图片描述

sudo tar jxf dlib-19.24.tar.bz2进行解压。
在这里插入图片描述

sudo mkdir /nginx/dlib在nginx安装目录/nginx创建一个新的目录dlib
在这里插入图片描述

配置文件nginx.conf里边的内容如下:

worker_processes  1;
events {worker_connections  1024;
}
http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;server {listen       80;server_name  localhost;location / {alias dlib/;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}
}

sudo cp -r dlib-19.24/docs/* /nginx/dlib/dlib-19.24/docs/里边所有的文件都复制到/nginx/dlib/里边。
在这里插入图片描述

nginx进行启动。
在这里插入图片描述

在浏览器里边输入ip,并且按下回车。
在这里插入图片描述

我下边的配置文件的内容会压缩文件:

worker_processes  1;
events {worker_connections  1024;
}
http {log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;gzip on;gzip_min_length 1;gzip_comp_level 2;gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;server {listen       80;server_name  localhost;access_log /nginx/logs/Sea123.access.log main;location / {alias dlib/;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}
}

可以使用nginx -t -c /nginx/conf/nginx.conf验证一下配置文件正误。
在这里插入图片描述
要是已经打开nginx,可以使用nginx -s reload重新加载配置文件启动。
在这里插入图片描述

在Firefox浏览器中输入ip,然后按下F12打开开发者工具,选择网络,就可以看到一些信息,可以看到有些文件大小数字比较大,但是传输数值比较小。
在这里插入图片描述

有冗余度的信息,才有压缩的价值。比如,用ASCII码编码的HTML、TXT、JSON这些人类可读的信息,由于人类语言的大量冗余性,有很大的压缩空间。但是JPG这些被压缩过的图片,再压缩就没有效果了,甚至由于多增加了一些压缩控制信息而增大体积。从图中就可以看到类型为pnggif,传输反而大于大小。

下边的配置文件加上了set $limit_rate 1k;这条显示传输速度的指令:

worker_processes  1;
events {worker_connections  1024;
}
http {log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;gzip on;gzip_min_length 1;gzip_comp_level 2;gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;server {listen       80;server_name  localhost;access_log /nginx/logs/Sea123.access.log main;location / {alias dlib/;set $limit_rate 1k;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}
}

nginx -s reload重新加载配置文件启动。
在这里插入图片描述

在Firefox浏览器中输入ip,然后按下F12打开开发者工具,选择网络,选择禁用缓存,可以看到传输时间明显加大,原先需要大小为26.27kB的文件,只需要48毫秒,现在需要7037毫秒。
在这里插入图片描述

此文章为10月Day 9学习笔记,内容来源于极客时间《Nginx 核心知识 150 讲》

http://www.lryc.cn/news/187875.html

相关文章:

  • MAX30102心率血氧传感器
  • 高效解决 TypeError : ‘ numpy._DTypeMeta‘ object is not subscriptable 问题
  • Hadoop作业篇(一)
  • SpringCloud中的分布式锁用法详解(Java+Redis SETNX命令)
  • 初学者如何选择:前端开发还是后端开发?
  • 从php页面插入MySQL的数据变为乱码如何解决?
  • OpenCV防抖实践及代码解析笔记
  • 函数栈帧的创建与销毁剖析
  • 性能测试-如何进行监控设计
  • 大数据List去重
  • CentOS8.2重启网络
  • 2023年【G1工业锅炉司炉】考试题及G1工业锅炉司炉模拟考试
  • 观察者模式 行为型设计模式之七
  • 数据结构与算法之堆: Leetcode 451. 根据字符出现频率排序 (Typescript版)
  • 吃透底层:从路由到前缀树
  • SparkSQL外部数据源
  • 林沛满-TCP 是如何避免被发送方分片的?
  • Java中的枚举是什么?
  • java学习--day24(单例模式序列化Lambda表达式)
  • 从0开始学go第六天
  • unity设计模式——代理模式
  • SpringBoot 如何使用 Grafana 进行可视化监控
  • 【Codeforces】 CF1762E Tree Sum
  • 用《斗破苍穹》的视角打开C#委托2 委托链 / 泛型委托 / GetInvocationList
  • 唐老师讲电赛
  • [ICCV-23] DeformToon3D: Deformable Neural Radiance Fields for 3D Toonification
  • 配置Hive使用Spark执行引擎
  • 基于FPGA的视频接口之千兆网口(五应用)
  • 车载开发所学内容,有哪些?程序员的转岗位需求
  • VSCode Intellij IDEA CE 数据库连接