本篇文章给大家谈谈企业核名网站源码分享是什么,以及免费企业核名系统对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。
简介
WEB
Internet(或Web)是一个庞大的分布式客户端/服务器信息系统,如下图所示。
许多应用程序通过Web同时运行,例如Web浏览/冲浪,电子邮件,文件传输,音频和视频流等。为了在客户端和服务器之间进行正确的通信,这些应用程序必须就特定的应用程序级协议达成一致,例如HTTP,FTP,SMTP,POP等。
HTTP
HTTP(超文本传输??协议)可能是Internet(或WEB)中使用的最流行的应用程序协议。HTTP是一种非对称的请求-响应客户端-服务器协议,如图所示。HTTP客户端向HTTP服务器发送请求消息。反过来,服务器返回响应消息。换句话说,HTTP是拉协议,客户端从服务器提取信息(而不是服务器将信息推送到客户端)。
HTTP是无状态协议。换句话说,当前请求不知道在先前的请求中已经完成了什么。HTTP允许协商数据类型和表示,以便允许独立于传输的数据构建系统。引自RFC2616:“超文本传输协议(HTTP)是一种用于分布式,协作式,超媒体信息系统的应用程序级协议。它是一种通用的无状态协议,可用于超出其用于超文本的许多任务,例如作为名称服务器和分布式对象管理系统,通过扩展其请求方法,错误代码和标题。“
浏览器
每当您从浏览器发出URL以使用HTTP获取Web资源时,例如http://www.nowhere123.com/index.html,浏览器将URL转换为请求消息并将其发送到HTTP服务器。HTTP服务器解释请求消息,并返回适当的响应消息,该消息是您请求的资源或错误消息。此过程如下所示:
统一资源定位器(URL)
URL(统一资源定位符)用于通过Web唯一标识资源。
URL具有以下语法:
protocol://hostname:port/path-and-file-name\n
URL中有4个部分:
协议:客户端和服务器使用的应用程序级协议,例如HTTP,FTP和telnet。主机名:服务器的DNS域名(例如,www.nowhere123.com)或IP地址(例如,192.128.1.2)。端口:服务器正在侦听来自客户端的传入请求的TCP端口号。路径和文件名:服务器文档基目录下所请求资源的名称和位置。
例如,在URLhttp://www.nowhere123.com/docs/index.html中,通信协议是HTTP;主机名是www.nowhere123.com。URL中未指定端口号,并采用默认号码,即HTTP的TCP端口80。要定位的资源的路径和文件名是“/docs/index.html”。
URL的其他示例是:
ftp://www.ftp.org/docs/test.txt\nmailto:user@test101.com\nnews:soc.culture.Singapore\ntelnet://www.nowhere123.com/\n
HTTP协议
如上所述,每当您在浏览器的地址栏中输入URL时,浏览器会根据指定的协议将URL转换为请求消息;并将请求消息发送到服务器。
例如,浏览器将URLhttp://www.nowhere123.com/doc/index.html转换为以下请求消息:
GET/docs/index.htmlHTTP/1.1\nHost:www.nowhere123.com\nAccept:image/gif,image/jpeg,*/*\nAccept-Language:en-us\nAccept-Encoding:gzip,deflate\nUser-Agent:Mozilla/4.0(compatible;MSIE6.0;WindowsNT5.1)\n(blankline)\n
当此请求消息到达服务器时,服务器可以执行以下任一操作:
服务器解释收到的请求,将请求映射到服务器文档目录下的文件中,并将请求的文件返回给客户端。
请求无法满足,服务器返回错误消息。
HTTP响应消息的示例如下所示:
HTTP/1.1200OK\nDate:Sun,18Oct200908:56:53GMT\nServer:Apache/2.2.14(Win32)\nLast-Modified:Sat,20Nov200407:16:26GMT\nETag:”10000000565a5-2c-3e94b66c2e680″\nAccept-Ranges:bytes\nContent-Length:44\nConnection:close\nContent-Type:text/html\nX-Pad:avoidbrowserbug\n\n<html><body><h1>Itworks!</h1></body></html>\n
浏览器接收响应消息,解释消息并根据响应的媒体类型在浏览器窗口中显示消息的内容(如Content-Type响应头中所示)。常见媒体类型包括“text/plain”,“text/html”,“image/gif”,“image/jpeg”,“audio/mpeg”,“video/mpeg”,“application/msword”和“application/PDF格式”。
在其空闲状态下,HTTP服务器除了侦听配置中为传入请求指定的IP地址和端口外什么都不做。当请求到达时,服务器会分析邮件头,应用配置中指定的规则,并采取相应的操作。网站管理员对Web服务器操作的主要控制是通过配置,将在后面的部分中详细介绍。
HTTPoverTCP/IP
HTTP是客户端-服务器应用程序级协议。它通常在TCP/IP连接上运行,如图所示。(HTTP不仅仅能在TCP/IP上运行。它只假设可靠的传输。可以使用任何提供此类保证的传输协议。)
TCP/IP(传输控制协议/互联网协议)是一组传输和网络层协议,用于机器通过网络相互通信。
IP(Internet协议)是一种网络层协议,处理网络寻址和路由。在IP网络中,为每台机器分配唯一的IP地址(例如,165.1.2.3),并且IP软件负责将消息从源IP路由到目的地IP。在IPv4(IP版本4)中,IP地址由4个字节组成,每个字节的范围为0到255,由点分隔,称为四点形式。此编号方案支持网络上最多4G地址。最新的IPv6(IP版本6)支持更多地址。由于记忆号码对于大多数人来说是困难的,因此使用类似英语的域名,例如www.nowhere123.com。DNS(域名服务)将域名转换为IP地址(通过分布式查找表)。特殊IP地址127.0.0.1始终指您自己的计算机。它的domian名称是“localhost”,可用于本地环回测试。
TCP(传输控制协议)是一种传输层协议,负责在两台机器之间建立连接。TCP由2个协议组成:TCP和UDP(用户数据报包)。TCP是可靠的,每个数据包都有一个序列号,并且需要确认。如果接收器没有接收到分组,则将重新发送分组。TCP保证数据包传输。UDP不保证数据包传输,因此不可靠。但是,UDP具有较少的网络开销,可用于视频和音频流等应用,其中可靠性并不重要。
TCP在IP机器中复用应用程序。对于每台IP计算机,TCP支持(多路复用)最多65536个端口(或套接字),端口号为0到65535.应用程序(如HTTP或FTP)在特定端口号上运行(或侦听)传入请求。端口0到1023被预先分配给流行协议,例如,80为HTTP,21为FTP,23为Telnet,25为SMTP,NNTP为119,DNS为53.端口1024及以上可供用户使用。
尽管TCP端口80已预先分配给HTTP,但作为默认HTTP端口号,这并不禁止您在其他用户分配的端口号(1024-65535)(如8000,8080)上运行HTTP服务器,尤其是对于测试服务器。您还可以在同一台计算机上的不同端口号上运行多个HTTP服务器。当客户端在没有明确说明端口号的情况下发出URL时,例如http://www.nowhere123.com/docs/index.html,浏览器将连接到主机www.nowhere123.com的默认端口号80。您需要在URL中明确指定端口号,例如http://www.nowhere123.com:8000/docs/index.html如果服务器正在侦听端口8000而不是默认端口80。
简而言之,要通过TCP/IP进行通信,您需要知道(a)IP地址或主机名,(b)端口号。
HTTP规范
HTTP规范由W3C(World-WideWebConsortium)维护,可从http://www.w3.org/standards/techs/http获得。目前有两种版本的HTTP,即HTTP/1.0和HTTP/1.1。由TimBerners-Lee编写的原始版本HTTP/0.9(1991)是一种用于在Internet上传输原始数据的简单协议。HTTP/1.0(1996)(在RFC1945中定义)通过允许类似MIME的消息改进了协议。HTTP/1.0不解决代理,缓存,持久连接,虚拟主机和范围下载的问题。这些功能在HTTP/1.1(1999)中提供(在RFC2616中定义)。
ApacheHTTPServer或ApacheTomcatServer
研究HTTP协议需要HTTP服务器(例如ApacheHTTPServer或ApacheTomcatServer)。
ApacheHTTP服务器是一种流行的工业级生产服务器,由ApacheSoftwareFoundation(ASF)@www.apache.org制作。ASF是一个开源软件基金会。也就是说,ApacheHTTP服务器是免费的,带有源代码。
第一个HTTP服务器由TimBernersLee在瑞士日内瓦的CERN(欧洲核研究中心)编写,他也发明了HTML。Apache于1995年初在NCSA(美国国家超级计算应用中心)“httpd1.3”服务器上构建.Apache可能因其包含一些原始代码(来自早期的NCSAhttpdWeb服务器)和一些原因而得名。补丁;或者来自美洲印第安部落的名字。
阅读关于如何安装和配置ApacheHTTP服务器的“ApacheHow-to”;或“Tomcat操作方法”安装和开始使用ApacheTomcatServer。
HTTP请求和响应
HTTP客户端和服务器通过发送文本消息进行通信客户端向服务器发送请求消息。反过来,服务器返回响应消息。
HTTP消息由消息头和可选消息体组成,由空行分隔,如下所示:
HTTP请求消息
HTTP请求消息的格式如下:
请求行
标头的第一行称为请求行,后跟可选的请求标头。
请求行具有以下语法
request-method-namerequest-URIHTTP-version\n
request-method-name:HTTP协议定义一组请求方法,例如GET,POST,HEAD和OPTIONS。客户端可以使用这些方法之一向服务器发送请求。request-URI:指定请求的资源。HTTP版本:目前正在使用两个版本:HTTP/1.0和HTTP/1.1。
RequestHeaders
请求头采用name:value对的形式。可以指定以逗号分隔的多个值。
request-header-name:request-header-value1,request-header-value2,…\n
请求头的示例如下:
Host:www.xyz.com\nConnection:Keep-Alive\nAccept:image/gif,image/jpeg,*/*\nAccept-Language:us-en,fr,cn\n
Example
以下显示了一个示例HTTP请求消息:
HTTPResponseMessage
HTTP响应消息的格式如下:
StatusLine
第一行称为状态行,后跟可选的响应头。
状态行具有以下语法:
HTTP-versionstatus-codereason-phrase\n
HTTP版本:此会话中使用的HTTP版本。HTTP/1.0和HTTP/1.1。status-code:服务器生成的3位数字,用于反映请求的结果。reason-phrase:给出状态代码的简短说明。常用状态代码和原因短语为“200OK”,“404NotFound”,“403Forbidden”,“500InternalServerError”。
状态行的示例是:
HTTP/1.1200OK\nHTTP/1.0404NotFound\nHTTP/1.1403Forbidden\n
ResponseHeaders
响应标头的格式为:value对:
response-header-name:response-header-value1,response-header-value2,…\n
响应头的示例如下:
Content-Type:text/html\nContent-Length:35\nConnection:Keep-Alive\nKeep-Alive:timeout=15,max=100\n
响应消息正文包含所请求的资源数据。
Example
以下显示了示例响应消息:
第一篇完喜欢同学可以关注我。
本文版权归是三僡然所有,转载请标明出处。欢迎转载,欢迎评论,欢迎分享。如果你有文章想分享可以联系我。
文章分享结束,企业核名网站源码分享是什么和免费企业核名系统的答案你都知道了吗?欢迎再次光临本站哦!
