一、背景

在讲解hosts文件之前,我们先了解下IP地址与域名的关系。

1、IP地址与域名的关系

IP(Internet Protocol)是一种规定互联网中数据传输的协议,每台连接到互联网中的计算机都会有一个唯一的IP地址,用于标识它在互联网上的位置。

在网络中,一个ip地址,代表一台主机。

也就是说当我们访问网站的时候,必须通过ip寻址,才能找到对应的主机。

在互联网早期,人们访问一个网站必须输入该网站所在主机的IP地址,这对于记不住IP地址的人来说是非常不方便的。

为了解决这个问题,人们开始使用域名系统(DNS)将易于记忆的域名映射到网络中的IP地址,使得人们可以通过输入域名来访问网站,而不需要记住一长串的IP地址。

因此,域名与IP地址是一一对应的关系,通过域名可以找到对应的IP地址,从而访问相应的网站或服务器。

2、示例

当输入www.baidu.com就可以访问百度

那它对应的ip是多少呢?

我们可以ping下

我们看到有返回一个ip地址:

180.101.50.242

那我们是不是可以直接请求这个ip呢?

当然可以

二、hosts文件是什么?

hosts是一个没有扩展名的系统文件,其基本作用就是将一些常用的网址域名与其对应的 IP 地址建立一个关联“ 数据库 ”。

当我们在浏览器中输入一个需要访问的域名的时候:

  • 首先要看浏览器缓存中有没有对应的 IP 地址。
  • 如果缓存中没有那就会从hosts文件中寻找对应的 IP 地址,一旦找到,系统就会立即打开对应网页
  • 如果hosts文件中没有找到,则系统会将网址提交 DNS 域名解析服务器进行 IP 地址的解析。

hosts文件的作用一句话就是:

负责将主机名称映射到相应的IP地址

因为hosts转换优先于DNS解析服务器,所以我们可以通过修改hosts文件做一些很重要的事情。

三、hosts文件应用场景

1、加快域名解析

对于经常要访问的网站,我们可以通过在Hosts中配置域名和IP的映射关系。

由于有了映射关系,当我们输入域名后,计算机就能够快速解析出 IP 地址,而不用请求网络上的 DNS 服务器。

2、构建局域网映射关系

有好多单位的系统为了安全,都在自己的局域网内使用,但由于局域网中一般很少架设DNS服务器,因此在访问这些服务器时,就需要输入难记的 IP 地址,这对用户来说并不友好。

因此,我们可以给这样主机起一个很容易记住的域名,然后在hosts文件中建立 IP 映射,这样在以后访问的时候,只要输入这个服务器的域名就可以了。

3、屏蔽网站或广告

比如我发现有个网址发现有木马,需要去屏蔽它,该如何处理?

对于这些网站我们可以利用Hosts把该网站的域名映射到错误的IP或自己计算机的IP,这样就不能访问了。

这里假设 www.baidu.com 是木马网址,我不想让我们电脑可以访问百度该如何做,很简单,在hosts添加如下配置

0.0.0.0 www.baidu.com

再去访问 www.baidu.com

显然已经无法访问了。

注意 :刚配置完屏蔽网址,去访问可能还是会正常访问的,因为浏览器中可能缓存了对应的IP,所以需要清除下浏览器缓存,或者过一会等该浏览器IP缓存失效后。

最后需要注意:

Hosts 文件配置的是静态IP,如果服务器更新了IP地址,本地Hosts 就会失效,需要及时更新 Hosts 文件才行。

声明: 公众号如需转载该篇文章,发表文章的头部一定要 告知是转至公众号: 后端元宇宙。同时也可以问本人要markdown原稿和原图片。其它情况一律禁止转载!

hosts文件妙用,提升网站访问速度!的更多相关文章

  1. 使用 Nginx 提升网站访问速度

    使用 Nginx 提升网站访问速度 http://www.ibm.com/developerworks/cn/web/wa-lo-nginx/ Nginx 简介 Nginx ("engine ...

  2. Nginx——使用 Nginx 提升网站访问速度【转载+整理】

    原文地址 本文是写于 2008 年,文中提到 Nginx 不支持 Windows 操作系统,但是现在它已经支持了,此外还支持 FreeBSD,Solaris,MacOS X~ Nginx(" ...

  3. 使用 Nginx 提升网站访问速度(转)

    Nginx 简介 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Ig ...

  4. 使用PHP和GZip压缩网站JS/CSS文件加速网站访问速度

    使用PHP和GZip压缩网站JS/CSS文件加速网站访问速度 一些泛WEB 2.0网站为了追求用户体验,可能会大量使用CSS和JS文件.这就导致在服务器带宽一定的情况下,多用户并发访问速度变慢.如何加 ...

  5. Apache 使用gzip、deflate 压缩页面加快网站访问速度

    Apache 使用gzip 压缩页面加快网站访问速度 介绍: 网页压缩来进一步提升网页的浏览速度,它完全不需要任何的成本,只不过是会让您的服务器CPU占用率稍微提升一两个百分点而已或者更少.   原理 ...

  6. [技术博客]使用CDN加快网站访问速度

    [技术博客]使用CDN加快网站访问速度 2s : most users are willing to wait 10s : the limit for keeping the user's atten ...

  7. 巧用linux服务器的/dev/shm/,如果合理使用,可以避开磁盘IO不给力,提高网站访问速度。

    巧用linux服务器的/dev/shm/ 巧用linux服务器的/dev/shm/,如果合理使用,可以避开磁盘IO不给力,提高网站访问速度. 首先让我们认识一下,什么是tmpfs和/dev/shm/? ...

  8. 如何使用ping和tracert命令测试网站访问速度

    在我们平时访问的网站中,有一些网站访问速度非常快,比如百度搜索网站和一些门户网站,有些网站访问很慢,有些网站甚至无法访问.那么我们该如何判断这些网站的访问速度呢?下面我们就使用Windows的ping ...

  9. 宝塔面板Nginx开启gzip,提高网站访问速度的方法

    这篇文章主要为大家详细介绍了宝塔面板Nginx开启gzip,提高网站访问速度的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴. 最近有用户问小编说在宝塔面板N ...

  10. 提升Apache网站访问速度的优化方法

    Apache是世界使用排名第一的Web服务器软件.它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一. 在Apache服务器上怎样优化才能提高 ...

随机推荐

  1. VUE-生命周期/请求数据

    使用方法 --- 4个before,4个ed,创造,装载,更新,销毁 初始化阶段 beforeCreate(){} // 准备怀孕 created(){} // 怀上了 *************** ...

  2. 四个常见的Linux面试问题

    四个常见的Linux面试问题. 刚毕业要找工作了,只要是你找工作就会有面试这个环节,那么在面试环节中,有哪些注意事项值得我的关注呢?特别是专业技术岗位,这样的岗位询问一般都是在职的工程师,如何在面试环 ...

  3. 升级二进制kubernetes集群

    升级二进制kubernetes集群 背景介绍 最近由于时间不足,暂时无法对小版本更新第一时间出新的文档.若需要升级集群版本,可以参考此文档进行操作,每个节点一个一个地更新.大版本更新请各位持续关注我的 ...

  4. pandas之loc/iloc操作

    在数据分析过程中,很多时候需要从数据表中提取出相应的数据,而这么做的前提是需要先"索引"出这一部分数据.虽然通过 Python 提供的索引操作符"[]"和属性操 ...

  5. pandas之读取文件

    当使用 Pandas 做数据分析的时,需要读取事先准备好的数据集,这是做数据分析的第一步.Panda 提供了多种读取数据的方法: read_csv() 用于读取文本文件 read_json() 用于读 ...

  6. 中国省市区--地区SQL表

    SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for rc_district -- ---- ...

  7. 迁移学习(CLDA)《CLDA: Contrastive Learning for Semi-Supervised Domain Adaptation》

    论文信息 论文标题:CLDA: Contrastive Learning for Semi-Supervised Domain Adaptation论文作者:Ankit Singh论文来源:NeurI ...

  8. SRE中的SLA/SLO/SLI

    SLA通俗理解 SLA 表征服务方与客户间的服务等级协议,定义服务方需保证的服务质量以及不达标情况下的服务补偿,在SRE领域,SLA 细分为 SLI.SLO 与 SLA: SLI,服务质量指标,服务的 ...

  9. 为什么 APISIX Ingress 是比 Emissary-ingress 更好的选择?

    本文从可扩展性和服务发现集成等多个维度对比了 APISIX Ingress 与 Emissary-ingress 的性能. 作者:容鑫,API7.ai 云原生技术工程师,Apache APISIX C ...

  10. 笔记:C++学习之旅---初识C++

    笔记:C++学习之旅---初识C++          博主也是一个新手,学习编程才一年左右,刚大学毕业不久,以前在学校学习的语言主要是C,本人是从嵌入式学起的!我现在从事的公司主要是C++,所以我也 ...