“GIS DICTIONARY A-Z” 查询页面开发(3)—— 基础知识之服务器、IP地址、域名、DNS、端口以及Web程序的访问流程
今天补一补基础知识:
一、服务器:能够提供服务的机器,取决于机器上安装的软件(服务软件)。服务器响应服务请求,并进行处理。
Web服务器:提供Web服务,即网站访问。常见Web服务软件:Apache(开源)、Tomcat(Java)、IIS(微软)……
二、IP:网络之间互连的协议,即为计算机网络相互连接进行通信而设计的协议。IP地址具有唯一性(每台电脑都有一个唯一的IP地址)。
IP地址就是类似127.0.0.1、27.166.14.101、163.129.1.108一样点与数字的组合。
三、域名(Domain Name):用一串用点分隔的名字 (www.bilibili.com) 组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位。
IP地址不便于记忆,域名就是为了便于人类记忆和沟通而产生的。
特殊IP如:127.0.0.1,代表本机(给电脑用)
特殊域名:localhost,代表本机(给人类用)
四、DNS(Domain Name System):域名系统,DNS就是域名和IP地址相互映射的数据库。
通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。
过程:用户输入域名 localhost → DNS ( localhost 127.0.0.1 ) → 服务器电脑
五、端口(Port):可以认为是设备与外界通讯交流的出口。端口可分为虚拟端口和物理端口。
其中虚拟端口指计算机内部或交换机路由器内的端口,不可见。
通过不同的端口可以找到不同的服务软件。如XAMPP控制台里轻松可见的“不同软件使用不同端口”。
全过程:用户输入域名 localhost : Port → DNS ( localhost 127.0.0.1 ) → 服务器电脑 →(通过Port找到)服务软件
六、静态网站的访问流程:
浏览器输入URL发起访问 → DNS服务器上找到域名对应的IP返回给浏览器 → 浏览器通过IP地址找到服务器电脑 → 通过端口找到服务软件,Apache在文件系统通过URI获取所需网页 → 再由Apache返回结果给浏览器 → 浏览器解析html网页并显示。
① URL:统一资源定位符 (Uniform Resource Locator),互联网上的绝对路径。
② URI:统一资源标志符 (Uniform Resource Identifier),表示web上每一种可用的资源。如 HTML文档、图像、视频、程序等,它们都由一个URI进行定位。
③ URI和URL都定义了资源是什么,但URL还定义了该如何访问资源。URL是一种具体的URI,它是URI的一个子集。URL不仅唯一标识资源,而且还提供了定位该资源的信息。URI 是一种语义上的抽象概念,它可以是绝对的,也可以是相对路径;而URL则必须提供足够的信息来定位,是绝对的路径。
④ DNS服务器在寻找对应IP地址时有先后次序,将先找本地DNS再找网络DNS;本地DNS即本机中的 hosts 文件。

七、动态网站的访问流程:整体与静态差不多,多出了服务器端解析和操纵数据库的内容。
① 服务器解析:查找动态网站中URI标识到的是 .php 文件,服务器的Apache需要经过PHP引擎来解析php代码;
② 数据库:php代码中可能包含操纵数据库的动作,PHP引擎连接到数据库服务器来读取数据;
③ 最后Apache再返回结果给浏览器,浏览器解析html并展示。注意这里浏览器解析的不是php代码,php代码只能由服务器端的php引擎解析。

睡觉zzZ
“GIS DICTIONARY A-Z” 查询页面开发(3)—— 基础知识之服务器、IP地址、域名、DNS、端口以及Web程序的访问流程的更多相关文章
- 微信公众号平台接口开发:基础支持,获取微信服务器IP地址
官方说明 目前看不出来这个接口有哪些具体运用,但是既然有这个接口,那我们就试试能不能用 访问接口 修改WeCharBase.cs,新增以下2个方法 public static string Serve ...
- ArcGIS API for JavaScript开发初探——基础知识
1.前言 在ArcGIS Web API开发体系中一共有四大类,分别为: ArcGIS API for Flex ArcGIS API for JavaScript ArcGIS API for RE ...
- IOS开发的基础知识
1.为什么对一个变量release后还要设为nil 对一个变量release后,这个变量指向的内存释放了,但这个变量本身没变,仍指向原来的内存地址.若这个变量在释放后被访问,或者被重复release, ...
- 【千纸诗书】—— PHP/MySQL二手书网站后台开发之基础知识
前言: 在具体回顾每一个功能的实现前,还是有必要先温习一些项目涉及到的PHP.MySQL[语法基础].项目github地址:https://github.com/66Web/php_book_stor ...
- Unity游戏开发面试基础知识
面试第一次知识总结: 一.Unity基本操作 1.unity提供哪几种光源? 点光源.平行光.聚光灯.区域光. 2.物体发生碰撞的必要条件什么? 两个物体必须有碰撞体Collider组件,一个物体上必 ...
- “GIS DICTIONARY A-Z” 查询页面开发(2)——INSERT INTO数据库
今日工作:数据库连接.数据写入 一.数据库连接:使用了pymysql库 from G2_dataClean import defList import pymysql db = pymysql.con ...
- “GIS DICTIONARY A-Z” 查询页面开发(1)——bs4与词典数据处理
第一天的工作:找到数据源,数据下载,数据处理. 数据源:"http://webhelp.esri.com/arcgisserver/9.3/java/geodatabases/definit ...
- web页面开发相关基础
CSS是一种用于web的标准布局语言,可以控制版面.颜色以及元素和图像的大小和位置.HTML文档应该利用外部样式表来定义文档中使用的样式.JavaScript也应该放在外部文档中,这个文档应该只包含J ...
- ArcGIS Engine开发前基础知识(1)
ArcGIS二次开发是当前gis领域的一项重要必不可少的技能.下面介绍它的基本功能 一.ArcGIS Engine功能 在使用之前首先安装和部署arcgis sdk,(在这里不在赘述相关知识)可以实现 ...
随机推荐
- Oralce 学习笔记
1. Oracle 数据库文件后缀是什么格式? 数据文件是以oracle自定义的格式存储的,没有固定的后缀名,一般通用的为.dbf和.ora而默认是dbf的 2.Database Configurat ...
- 【border树】【P2375】动物园
Description 给定一个字符串 \(S\),对每个前缀求长度不超过该前缀一半的公共前后缀个数. 共有 \(T\) 组数据,每组数据的输出是 \(O(1)\) 的. Limitations \( ...
- django_settings源码解析
目录 配置文件插拔式设计: 简单版: 复杂版 importlib 与`__import__的区别: 配置文件插拔式设计: 项目配置文件插拔式设计: 基于django settings源码实现自己项目配 ...
- 详细讲解redis数据结构(内存模型)以及常用命令
Redis数据类型 与Memcached仅支持简单的key-value结构的数据记录不同,Redis支持的数据类型要丰富得多,常用的数据类型主要有五种:String.List.Hash.Set和Sor ...
- ECMAScript6-1
1.let与const ES205(ES6)新增两个重要的JavaScript关键字:let和const let声明的变量只在let命令所在的代码块内有效,const声明一个只读的常量,一旦声明,其值 ...
- python总结三
1.线性表若采用链式存储结构的时候,要求内存中可用存储单位的地址是:连续或者不连续都可以 链式存储去找后继节点或者前驱节点是使用指针来实现的,不需要连续的内存,当然,也可以是连续的内存地址 2. 线性 ...
- Azure DevOps Server (TFS) 修改Git文件大小限制
签入Git的所有文件将永远保留在存储库中,限制大文件签入到代码库,可以增加磁盘使用效率,提高系统备份还原等日常维护的效率. 通过下面的设置,团队项目管理员可以阻止超过特定大小的文件进入存储库.如果推送 ...
- 树莓派4B基本配置
一.系统安装 官网下载好系统解压,使用SD Card Formatter格式化内存卡 # 查看内存卡状态,通过内存卡大小判断是哪个 df -lh # 卸载内存卡 diskutil unmount /d ...
- Zookeeper的介绍与基本部署
目录 简介 架构 安装 StandAlone模式 1. 安装 2. 修改配置 3. 启动 4. 验证 5. 基本用法 Distributed模式 1. 配置hosts 2. 配置zoo.cfg 3. ...
- [转帖]JVM性能调优详解
JVM性能调优详解 https://www.cnblogs.com/secbro/p/11833651.html 应该是 jdk8 以前的方法 貌似permsize 已经放弃这一块了. 前面我们学习了 ...