搜尋
首頁常見問題什麼是超文本傳輸協議
什麼是超文本傳輸協議Jun 30, 2022 pm 03:25 PM
http

超文本傳輸協定指的是HTTP協議,是基於「TCP/IP」的通訊協議,一個簡單的「請求-回應」協議,它指定了客戶端可能發送給伺服器什麼樣的訊息以及得到什麼樣的回應;請求和回應訊息的頭以ASCII形式給出,而訊息內容則具有一個類似MIME的格式。 HTTP是應用層協議,是為了實現某一類具體應用的協議,並由某一運行在用戶空間的應用程式來實現其功能。

什麼是超文本傳輸協議

本教學操作環境:windows7系統、Dell G3電腦。

超文本傳輸協定指的是HTTP協議,是基於「TCP/IP」的通訊協議,一個簡單的「請求-回應」協定;它是用來提供World Wide Web上的幾乎所有的文件和其它數據,統稱資源。這些資源可能是HTML文件,圖像文件,查詢結果,或其他任何東西。

HTTP協定指定了客戶端可能傳送給伺服器什麼樣的訊息以及得到什麼樣的回應。請求和回應訊息的頭以ASCII形式給出;而訊息內容則具有一個類似MIME的格式。這個簡單模型是早期Web成功的有功之臣,因為它讓開發和部署非常直截了當。

瀏覽器是作為一個HTTP客戶端的作品,因為這就是所謂的Web伺服器的HTTP伺服器發送請求。 Web伺服器,然後傳送回客戶端的回應。標準和HTTP伺服器的預設連接埠上監聽是80,但它可以改變到任何其他端口,如8080等

有三個HTTP重要應該知道的事情:

  • HTTP是無連線的: 在發出請求時,客戶端與伺服器斷開連接,並等待回應。伺服器必須重新建立連線後,它處理請求。

  • HTTP是獨立的媒體的: 可以傳送任何類型的數據,只要透過HTTP的客戶端和伺服器都知道如何處理的資料內容。決定如何處理內容的MIME規格。

  • HTTP是無狀態的: HTTP連接,這是一個直接結果。伺服器和客戶端,只知道對方在一個請求。此後,每個忘記了其他。基於這個原因,無論是客戶端或瀏覽器可以保留不同要求之間的跨網頁的資訊。

HTTP是應用層協議,同其他應用層協議一樣,是為了實現某一類具體應用的協議,並由某一運行在用戶空間的應用程式來實現其功能。 HTTP是一種協定規範,這種規範記錄在文件上,為真正透過HTTP進行通訊的HTTP的實作程序。

HTTP是基於B/S架構進行通訊的,而HTTP的伺服器端實作程式有httpd、nginx等,其客戶端的實作程式主要是Web瀏覽器,例如Firefox、Internet Explorer、Google Chrome、 Safari、Opera等,此外,客戶端的命令列工具還有elink、curl等。 Web服務是基於TCP的,因此為了能夠隨時回應客戶端的請求,Web伺服器需要監聽在80/TCP連接埠。這樣客戶端瀏覽器和Web伺服器之間就可以透過HTTP進行通訊了。

工作原理:

HTTP是基於客戶/伺服器模式,且面向連線的。典型的HTTP事務處理有以下的過程:

(1)客戶與伺服器建立連線;

(2)客戶向伺服器提出請求;

(3)伺服器接受請求,並根據請求返回相應的文件作為應答;

(4)客戶與伺服器關閉連線。

客戶與伺服器之間的HTTP連接是一種一次性連接,它限制每次連接只處理一個請求,當伺服器返回本次請求的應答後便立即關閉連接,下次請求再重新建立連線。這種一次性連接主要考慮到WWW伺服器面向的是Internet中成千上萬個用戶,且只能提供有限個連接,故伺服器不會讓一個連接處於等待狀態,及時地釋放連接可以大大提高伺服器的執行效率。

更多相關知識,請造訪常見問題欄位!

以上是什麼是超文本傳輸協議的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
Springboot怎么使用内置tomcat禁止不安全HTTPSpringboot怎么使用内置tomcat禁止不安全HTTPMay 12, 2023 am 11:49 AM

Springboot内置tomcat禁止不安全HTTP方法1、在tomcat的web.xml中可以配置如下内容让tomcat禁止不安全的HTTP方法/*PUTDELETEHEADOPTIONSTRACEBASIC2、Springboot使用内置tomcat没有web.xml配置文件,可以通过以下配置进行,简单来说就是要注入到Spring容器中@ConfigurationpublicclassTomcatConfig{@BeanpublicEmbeddedServletContainerFacto

JAVA发送HTTP请求的方式有哪些JAVA发送HTTP请求的方式有哪些Apr 15, 2023 am 09:04 AM

1.HttpURLConnection使用JDK原生提供的net,无需其他jar包,代码如下:importcom.alibaba.fastjson.JSON;importjava.io.BufferedReader;importjava.io.InputStream;importjava.io.InputStreamReader;importjava.io.OutputStream;importjava.net.HttpURLConnection;

nginx中如何升级到支持HTTP2.0nginx中如何升级到支持HTTP2.0May 24, 2023 pm 10:58 PM

一、前言#ssl写在443端口后面。这样http和https的链接都可以用listen443sslhttp2default_server;server_namechat.chengxinsong.cn;#hsts的合理使用,max-age表明hsts在浏览器中的缓存时间,includesubdomainscam参数指定应该在所有子域上启用hsts,preload参数表示预加载,通过strict-transport-security:max-age=0将缓存设置为0可以撤销hstsadd_head

Nginx的HTTP2协议优化与安全设置Nginx的HTTP2协议优化与安全设置Jun 10, 2023 am 10:24 AM

随着互联网的不断发展和改善,Web服务器在速度和性能上的需求也越来越高。为了满足这样的需求,Nginx已经成功地掌握了HTTP2协议并将其融入其服务器的性能中。HTTP2协议要比早期的HTTP协议更加高效,但同时也存在着特定的安全问题。本文将为您详细介绍如何进行Nginx的HTTP2协议优化和安全设置。一、Nginx的HTTP2协议优化1.启用HTTP2在N

Nginx中HTTP的keepalive怎么配置Nginx中HTTP的keepalive怎么配置May 12, 2023 am 11:28 AM

httpkeepalive在http早期,每个http请求都要求打开一个tpcsocket连接,并且使用一次之后就断开这个tcp连接。使用keep-alive可以改善这种状态,即在一次tcp连接中可以持续发送多份数据而不会断开连接。通过使用keep-alive机制,可以减少tcp连接建立次数,也意味着可以减少time_wait状态连接,以此提高性能和提高httpd服务器的吞吐率(更少的tcp连接意味着更少的系统内核调用,socket的accept()和close()调用)。但是,keep-ali

Python的HTTP客户端模块urllib与urllib3怎么使用Python的HTTP客户端模块urllib与urllib3怎么使用May 20, 2023 pm 07:58 PM

一、urllib概述:urllib是Python中请求url连接的官方标准库,就是你安装了python,这个库就已经可以直接使用了,基本上涵盖了基础的网络请求功能。在Python2中主要为urllib和urllib2,在Python3中整合成了urllib。Python3.x中将urllib2合并到了urllib,之后此包分成了以下四个模块:urllib.request:它是最基本的http请求模块,用来模拟发送请求urllib.error:异常处理模块,如果出现错误可以捕获这些异常urllib

怎么利用Java实现调用http请求怎么利用Java实现调用http请求Jun 02, 2023 pm 04:57 PM

一、概述在实际开发过程中,我们经常需要调用对方提供的接口或测试自己写的接口是否合适。很多项目都会封装规定好本身项目的接口规范,所以大多数需要去调用对方提供的接口或第三方接口(短信、天气等)。在Java项目中调用第三方接口的方式有:1、通过JDK网络类Java.net.HttpURLConnection;2、通过common封装好的HttpClient;3、通过Apache封装好的CloseableHttpClient;4、通过SpringBoot-RestTemplate;二、Java调用第三方

Nginx http运行状况健康检查如何配置Nginx http运行状况健康检查如何配置May 14, 2023 pm 06:10 PM

被动检查对于被动健康检查,nginx和nginxplus会在事件发生时对其进行监控,并尝试恢复失败的连接。如果仍然无法恢复正常,nginx开源版和nginxplus会将服务器标记为不可用,并暂时停止向其发送请求,直到它再次标记为活动状态。上游服务器标记为不可用的条件是为每个上游服务器定义的,其中包含块中server指令的参数upstream:fail_timeout-设置服务器标记为不可用时必须进行多次失败尝试的时间,以及服务器标记为不可用的时间(默认为10秒)。max_fails-设置在fai

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境