用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.hqwc.cn/news/129906.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Astronomaly:利用 CNN 和主动学习识别 400 万张星系图像中的异常

星系中的异常现象是我们了解宇宙的关键。然而,随着天文观测技术的发展,天文数据正以指数级别增长,超出了天文工作者的分析能力。 尽管志愿者可以在线上参与对天文数据的处理,但他们只能进行一些简单的分类,还可能会遗漏…

【轻松玩转MacOS】安全隐私篇

引言 这一篇将介绍如何保护MacOS的安全,包括如何设置密码,使用防火墙,备份数据等重要环节,避免因不慎操作或恶意攻击带来的安全风险,让你的MacOS之旅更安心、更放心。 一、设置密码:保护你的MacOS的第一道…

MySql运维篇---009:分库分表:垂直拆分、水平拆分、通过MyCat进行分片,读写分离:一主一从、 双主双从

3.分库分表 3.1 介绍 3.1.1 问题分析 使用单个数据库存储所有的数据,如果磁盘和内存和内存不足了可以增大磁盘和内存,但是对于一台服务器的磁盘和内存不可能无限制的扩张下去,它是受我们服务器的硬件影响的,如果说数据库所存储…

sentinel的启动与运行

首先我们github下载sentinel Releases alibaba/Sentinel (github.com) 下载好了后输入命令让它运行即可,使用cmd窗口输入一下命令即可 java -Dserver.port8089 -jar sentinel-dashboard-1.8.2.jar 账号密码默认都是sentinel

java日志框架详解-Log4j2

一、概述 Apache Log4j 2 (Log4j – Apache Log4j 2)是对Log4j的升级,它比其前身Log4j 1.x提供了重大改进,并参考了Logback中优秀的设计,同时修复了Logback架构中的一些问题。被誉为是目前最优秀的Java日志框架&#x…

现货黄金指标之王是什么

很多现货黄金投资在日常看盘的交易的时候,都会借助各种各样的技术指标来辅助自己的分析,但其实好用的技术指标两三个就足够了。如果有那么一个指标,可以帮助投资者辨清趋势,把握行情走势的大局,一定会是大受市场欢迎。…

CSS 布局案例: 2行、多行每行格数不定,最后一列对齐

布局期望的效果如下&#xff1a; 第二行最后一格与第一行最后一格对齐。每行格数不定。自动拉伸填充整个宽度 实现&#xff1a; 一开始打算用display:flex&#xff0c; 自动分散&#xff0c;但是第二行对齐第一行最后一格控制不了。 使用grid fr均分单位控制。 <!DOCTYPE…

问题记录:无法删除.dll文件,显示“文件已在Windows资源管理器中打开”

序言 用过的无效方法列表&#xff1a; 360 解除占用无效360 粉碎无效单纯的用taskkill /f /t /im "xxx.dll" 进程名无效 解决方法 1&#xff09;tasklist /m 文件名 tasklist /m 得到进程PID 7692 2&#xff09;taskkill /F /PID 7692 &#xff08;该命令效果…

Feign(替代RestTemplate)远程调用

Feign初步学习 定义 Feign 是一个基于 Java 的 HTTP 客户端库&#xff0c;它是 Spring Cloud 中的一部分&#xff0c;用于简化微服务之间的 HTTP 通信。与传统的使用 RestTemplate 来调用 RESTful 服务不同&#xff0c;Feign 提供了一种声明式、基于接口的方式来定义和调用 H…

大语言模型学到什么

背景&#xff1a; 这篇文章是对《LANGUAGE MODELS REPRESENT SPACE AND TIME》论文的翻译加解读。之所以选这篇文章是因为最近在研究大模型的可解释性&#xff0c;以及基于可解释性对大模型的下游任务适配做训练级别可控性增强研究。其实总结成两句话就是&#xff1a; 1.大模…

WPFdatagrid结合comboBox

在WPF的DataGrid中希望结合使用ComboBox下拉框&#xff0c;达到下拉选择绑定的效果&#xff0c;在实现的过程中&#xff0c;遇到了一些奇怪的问题&#xff0c;因此记录下来。 网上能够查询到的解决方案&#xff1a; 总共有三种ItemSource常见绑定实现方式&#xff1a; 1.ItemS…