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

14、【Ubuntu】【VSCode】VSCode 断联问题分析:hostname(二)

【声明】本博客所有内容均为个人业余时间创作,所述技术案例均来自公开开源项目(如Github,Apache基金会),不涉及任何企业机密或未公开技术,如有侵权请联系删除

背景

上篇 blog
【Ubuntu】【VSCode】VSCode 断联问题分析:hostname(一)
介绍了下 hostname 命令以及主机名,域名,以及全限定域名 FDQN 的概念与区别,下面继续来看下

VSCode 断联问题

上篇 blog 【Ubuntu】【VSCode】VSCode 断联问题分析:hostname(一) 提到了对于域名 csdn.net 和全限定域名 www.csdn.net,网站更常用的是HTTP 重定向 (301),当访问 csdn.net 时,Web 服务器收到请求,返回一个 HTTP 301 状态码,告诉浏览器用 www.csdn.net 访问,此时浏览器会自动跳转到 www.csdn.net,比如在终端输入

curl -I csdn.net

可以看到响应如下,回复 HTTP 301,并且告知了 csdn.net 域名的位置在 www.csdn.net,说明 csdn.net 被重定向到了 www.csdn.net
在这里插入图片描述

可以看到,其实不管用域名 xxx.com 还是全限定域名 FQDN www.xxx.com,一般都能访问到网站内容,从技术上没有强制要求, 因为通过 DNS 配置 和 HTTP 重定向,xxx.comwww.xxx.com 都能指向同一个地方

对于 www 而言,其本质上是一个主机名,表示 Web 服务的入口www 从技术上来说不重要,但习惯上仍然广泛使用,属于一个历史遗留的仪式感,就像外卖快递上的收件人,虽然不加也能寄到,只要有地址(域名)即可,但加上更规范,可以清晰地标识该处是 Web 服务

另外,还要注意一点,在互联网上,用户看到其主机名是 www,不代表其内部的机器也叫 www,实际上,www 是给用户看的主机名,而在服务器内部,看到的则可能是 web01web02 这样的主机名代号,也就是说,主机名在不同层级下有不同的视角:

  • 用户视角:看到 www.mycompany.com 这样的全限定域名 FQDN,这是一个面向公众的 DNS 记录,www 作为服务别名,提示用户该地址提供网页服务,但这里不是一个真实的服务器名字,而是一个负载均衡器CDN 节点(Content Delivery Network,内容分发网络)的地址
  • 内部视角:看到 web01web02db03 这样的代号,真实的物理服务器或虚拟机可以被命名为类似 web01.mycompany.com 内部运维使用的主机名,像这样的名字不会暴露给互联网用户

其连接过程大致如下
在这里插入图片描述

在这个过程中,用户只知道 www.xxx.com,而负载均衡器知道后端有 web01web02web03 等服务器,而 web01web02web03 就是这些后端服务器的主机名,但它们并不知道自己对外叫 www.xxx.com

关于前面介绍的 HTTP 301 重定向,涉及到 HTTP 状态码,这些状态码是由互联网工程任务组(IETF,The Internet Engineering Task Force)在一系列的 RFC(Request for Comments)文档中定义的,这些文档是互联网标准和技术规范的基础

在规范文档 Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
RFC 7231 中,可以找到 HTTP 301 状态码如下

在这里插入图片描述
可以看到 301 Moved Permanently 表示请求的资源已经被永久地移动到了新的链接 URI,客户端用户应该使用新的 URI 进行后续请求,浏览器拿到这个指示后,就会跳转到新的链接

然后这里再最后说下前面使用的 curl -I 命令,在终端输入

man curl

查看 curl 命令如下
在这里插入图片描述

可以看到 curl 命令的功能:transfer a URL,表示通过 URL 从服务器获取数据,或者向服务器发送数据,curl 命令可以处理多种网络协议,比如 HTTP/HTTPS(访问网页),FTP/FTPS(文件传输),SCP/SFTP(SSH 传输),SMTP/SMTPS(发送邮件),FILE(访问本地文件)等等,几乎能处理所有网络传输需求

查找 -I 选项如下
在这里插入图片描述
可以看到 -I 选项可以请求并显示服务器返回的 HTTP 头部信息

ok,先到这里,下篇 blog 继续

http://www.dtcms.com/a/520297.html

相关文章:

  • Java 堆排序(Heap Sort)详解教程
  • 软件设计师知识点总结:操作系统
  • 黄岩路桥网站设计网站流量提升方案
  • 设计师网站欣赏店铺只做商品展示网站怎么做
  • dify部署及SSL自签实现
  • 云南省建设厅标准员网站手机兼职赚钱
  • Redis哈希表渐进式rehash深度解析:为何百万数据迁移不阻塞服务?
  • 广东省省考备考(第一百三十一天10.23)——科学推理:电学(第六节课)
  • Spring的三级缓存和SpringMVC的流程
  • 为什么麒麟信创系统需要开启overcommit_memory才能安装postgresql成功
  • PostGresql All语法
  • [java] 图文示八股
  • 【图像处理】图像形态学操作
  • 网站上传 空间 数据库开发一个电商平台app要多少钱
  • 如何制作网站链接数字镭网站开发
  • 使用python的matplotlib进行绘图
  • Nginx使用auth_request模块做外部认证集成Kibana
  • 【题解】洛谷 P2218 [HAOI2007] 覆盖问题 [二分 + 思维]
  • xss-labs pass-12
  • 企业网站建设服务电话做网站什么主题好做
  • 注册电气工程师(供配电)执业资格考试专业考试规范及设计手册(2025版)
  • 关于zwg技术的深度解析与应用前景
  • linux 什么做网站好网站优化课程培训
  • 键盘PCB为何对板厂要求更高?差异、难点及猎板解决方案解析
  • OMSDK WebView Display 接入步骤
  • 零基础新手小白快速了解掌握服务集群与自动化运维(十S四)储存服务-NFS文件储存
  • tidex-数字货币交易所
  • C#使用OpenVinoSharp+魔塔社区的读光中英文OCR ONNX模型进行文字检测(仅检测不做识别)
  • 积分商城小程序深圳seo网络优化公司
  • [Linux文件系统——Lesson17.软硬链接]