Linux(Web與html)

域名
DNS與域名:

網絡是基于tcp/ip協議進行通信和連接的

tcp/ip協議是五層協議:應用層–傳輸層—網絡層----數據鏈路層----物理層每一臺主機都有一個唯一的地址標識(固定的ip地址,用于區分用戶和計算機。

ip地址:由32位二進制組成的,不方便記憶。隨后就有了域名。又因為網絡通信是靠IP地址進行通信的,域名不能直接通信,因此有了dns解析。

dns解析的主要作用:就是將域名解析成ip地址,方便進行通信。

dns解析的方式:

1、 /etc/hosts:負責快速解析的文件,包含了ip與主機名之間的映射關系。如果沒有dns服務器的情況下,可以使用/etc/hosts文件來完成解析和映射。

[root@www conf]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

2、/etc/resolv.conf:dns客戶端的配置文件,設置dns服務器的ip和域名。還包括了主機域名的搜索順序。主要是域名解析服務器使用的配置文件。

[root@www conf]# cat /etc/resolv.conf 
# Generated by NetworkManager
nameserver 114.114.114.114

3、修改網卡配置文件---->etc/sysconfig/network-scripts/ifcfg-ens33

注:現在的dns域名解析服務器,都由運營商來做。

dns域名解析服務器的作用:

1.保持和維護域名空間。

2.響應解析請求。(解析端也就是客戶端)

dns域名分層:根域 ——> 頂級域 ——> 二級域 ——> 子域 ——> 主機

如何注冊域名:

1、準備申請材料

2、查找域名注冊網站

3、注冊申請

4、正式使用

HTML

html:超文本標記語言,是一種規范的,標準的語言格式。網頁文件本身就是一個文本文件,html就是通過標記的方式,告訴瀏覽器如何顯示文本當中的內容。html文件是一個文本文件,所有可以生成txt的文件工具,都可以進行編輯,修改之后的文件后綴名為:.html或.htm

網頁:純文本格式的文件,用html語言來進行編寫的。再用瀏覽器翻譯成頁面的形式顯示出來,

網站:是由多個頁面組成的,也就是多個網頁組成的結合體。

主頁:打開網站后出現的第一個頁面就是網站的主頁。

域名:瀏覽網頁時輸入的網址。

協議:http/https (用來傳輸頁面的通信協議),https就是加密的,http/https都是通信協議,基于tcp協議,端口號http默認是80,https默認是:443

URL:萬維網尋址系統,唯一標識。即:https://www.xxx.com

uri:
?

超鏈接:超鏈接將網站中的不同頁面連接起來。

發布:將制作好的頁面上傳到服務器,供用戶訪問。

Web

Web:全球廣域網,也成為萬維網,是一種分布式圖形信息系統。建立在internet上的一種網絡服務。

Web1.0 和 Web2.0

Web1.0是單向的,以編輯為特征,網站提供給用戶的內容是編輯處理后,然會用戶閱讀網站提供的內容。

目前web2.0是主流,更注重交互作用。加強了網站與用戶的互動。所以產生了靜態頁面和動態頁面。

靜態頁面就是標準的html文件。

擴展名一般都是.html或.htm

里面可以包含圖片,文本,聲音 動畫。是網站建設的基礎,早期的網站都是靜態頁面,沒有后臺數據,不包含可交互的內容。相對來說更新起來比較麻煩,一般用于展示型網站。

靜態頁面(web1.0)的特點:

1.靜態頁面的url是固定的。一般不包含?

2.頁面一經發布,都是保存在網站服務器上的

3.靜態頁面相對穩定,內容很少發生變化,容易被搜索引擎檢索。

4.沒有數據庫的支持,制作和維護的工作量都比較大。網站的信息量如果太大,單純使用靜態頁面就會比較困難。

5.沒有交互性,只能看功能上受限很大。

6.瀏覽速度很快,因為不需要連接后端數據庫。

動態頁面(web2.0):

1.網頁url是不固定的,用戶可以和后臺數據進行交互。

2.動態頁面的網址中一般會包含一個特殊標記 —> ?

3.動態頁面的語言:PHP JSP PYTHON RUBY TOMCAT(JAVA)

動態頁面的特點:

1.交互性

2.自動更新

3.特效,每個人進入頁面的時候會有不同的效果。

總結:靜態頁面就是 —>看

動態頁面:------>交互

web3.0 場景融合
?

http協議:

httpd是apache服務在linux中的程序名

http協議:超文本傳輸協議。是互聯網上應用最廣泛的網絡協議之一。基于tcp協議的應用層的傳輸協議。面向用戶。

總結:就是客戶端和服務端之間進行數據傳輸的一種規則。

基本工作流程:

1.客戶端和服務端進行tcp連接。(三次握手—建立連接)

2.客戶端發送http請求,服務端接收到http請求之后,響應客戶端的請求。

3.通過socket接口,通過端口進行通信。

4,響應到達客戶端,解析的過程(瀏覽器解析),用戶查看,使用,訪問。

5.訪問,使用。查看。結束之后,斷開連接(—>四次揮手)

http是一種無狀態的協議,本身不會對發送過的請求和響應的通信進行持久化處理。連接保持。為了讓http能夠快速的大量的進行處理事務,提高效率。

連接保持是需要的。

cookie:記錄用戶的登錄狀態,跟蹤統計用戶訪問網站的習慣,識別用戶身份,保存用戶信息。這個是服務器留在用戶計算機上的小文件。從http1.1 開始自帶http協議的連接保持功能,也叫長連接。

長連接作用:

作用一:一次性獲取頁面文件的所有信息,不在需要分開處理請求,所以速度大大加快,也就是并行處理。

作用二:保持連接:keep-alive,在tcp連接上,可以傳送多個http的請求和響應。減少了建立和關閉連接的消耗和延遲。連接保持是有時間限制的,不是無限的,默認是開啟的,默認60s

連接資源占用:長時間保持占用,會降低服務器的負載,如果是高并發,會使服務器耗盡資源。

連接狀態管理:長連接需要維護連接狀態,增加服務器的負擔。(隨后就有了集群的誕生)

https:加密通信協議,加密數據傳輸。加密過程涉及客戶端和服務器之間進行密鑰交換,確保只有合法的接收方,才可以解密數據(即證書)

證書:https使用數字證書驗證身份

https應用:電子商務,銀行網站

加密解密會對訪問速度有一定影響。

http的請求方式:

1.請求頭:

請求頭當中包含請求體。

請求體當中的內容:

Accept:客戶端可以接收的數據類型

Accept-Encoding:客戶端可以接收的編碼格式

Accept-Language:客戶端可以支持的語言類型

Cache-Control:緩存使勁按,圖片或者音頻文件的緩存時間(緩存指的是保留在本地的時間,即下次再訪問圖片,不需要再向服務端發起請求,從而提高訪問速度)

Connection:告訴服務器處理請求連接。默認都是keep-alive,保持連接,默認65s

keep-alive:告訴服務器,保持一段時間,不要直接關閉連接

請求方式:

get:向服務器發起請求,http協議中的get,就是請求

post:也是請求的一種,post是向后臺發數據。服務器會添加數據,也可以改變服務器上的數據。

get方法特點:(獲取)

1.從指定服務器獲取數據

2.get請求是可以被緩存

3.get請求會保存在瀏覽器的記錄中,cookie

4.get請求的長度,是有限制的。

post方法的特點:(發送)

請求的一種,提交數據給服務器處理。

1.post請求不能緩存

2.post請求也不會記錄在瀏覽器的記錄當中

3.請求體的長度也沒有限制
?

Status 狀態碼,響應碼:由服務器來進行提供的

請求之后,服務器收到請求,會有一個回應,響應,同時會反饋一個響應碼。

請求狀態的響應碼:
1xx、2xx、3xx、4xx、5xx

100-101信息提示
200-206成功,只要狀態碼是200,統統是請求響應成功。
300-305重定向
400-415客戶端錯誤 (指的是請求失敗,獲取資源失敗)
500-505服務端錯誤(響應失敗)


總結:

2xx 3xx 一般都是正確的;

4xx:客戶端錯誤 ,5xx:服務端錯誤。

常見的狀態碼:

200成功 ok
301請求的永久頁面跳轉
304重定向到緩存(訪問的是緩存)
403禁止訪問 (權限不夠)
404請求頁面找不到 (頁面不存在)
500服務器內部錯誤
502網關失效
503服務不可用
504網關請求超時


socket (通信套接字):實現不同主機進行通信和數據交換,進程間傳輸的標志:ip ,端口

在http協議當中ocket的作用是:

1.客戶端套接字:定義了唯一的客戶進程。

2.服務端套接字:定義了一個唯一的服務器進程。

套接字調用的

socket():創建端口

bind():綁定ip和端口

listen():監聽,等待連接

accept():接收請求

connect():請求連接建立

wirte():發送

read():接收

ESTABLISHED:連接已經建立,正在傳輸數據

close()關閉連接
?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/34938.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/34938.shtml
英文地址,請注明出處:http://en.pswp.cn/news/34938.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

深入淺出:MyBatis的使用方法及最佳實踐

這里寫目錄標題 添加MyBatis框架?持配置連接字符串和MyBatis配置連接字符串配置 MyBatis 中的 XML 路徑 添加業務代碼創建數據庫和表添加用戶實體類添加 mapper 接?添加 UserMapper.xml添加 Service層添加 Controller層 增刪改操作增加操作刪除操作修改操作 添加MyBatis框架?…

JVM 基礎

鞏固基礎,砥礪前行 。 只有不斷重復,才能做到超越自己。 能堅持把簡單的事情做到極致,也是不容易的。 JVM 類加載機制 JVM 類加載機制分為五個部分:加載,驗證,準備,解析,初始化&am…

Hadoop安裝完全分布式搭建

1、安裝Hadoop 上傳Hadoop的指定路徑/root/softwares 解壓安裝 cd /root/softwares && tar -zxvf hadoop-2.7.3.tar.gz -C /usr/local配置環境變量 vim /etc/profile # Hadoop Environment export HADOOP_HOME/usr/local/hadoop-2.7.3 export PATH$PATH:$HADOOP_HOM…

openCV使用c#操作攝像頭

效果如下: 1.創建一個winform的窗體項目(框架.NET Framework 4.7.2) 2.Nuget引入opencv的c#程序包(版本最好和我一致) 3.后臺代碼 using System; using System.Collections.Generic; using System.ComponentModel;…

用友-NC-Cloud遠程代碼執行漏洞[2023-HW]

用友-NC-Cloud遠程代碼執行漏洞[2023-HW] 一、漏洞介紹二、資產搜索三、漏洞復現PoC小龍POC檢測腳本: 四、修復建議 免責聲明:請勿利用文章內的相關技術從事非法測試,由于傳播、利用此文所提供的信息或者工具而造成的任何直接或者間接的后果及損失&#…

Leetcode-每日一題【劍指 Offer 24. 反轉鏈表】

題目 定義一個函數&#xff0c;輸入一個鏈表的頭節點&#xff0c;反轉該鏈表并輸出反轉后鏈表的頭節點。 示例: 輸入: 1->2->3->4->5->NULL輸出: 5->4->3->2->1->NULL 限制&#xff1a; 0 < 節點個數 < 5000 解題思路 1.題目要求我們反轉…

Windows下運行Tomcat服務時報GC Overhead Limit Exceeded

根本原因是在新建Tomcat作為Windows服務時&#xff0c;系統默認設置的堆內存太小了&#xff0c;我們打開/bin/service.bat文件&#xff0c;將如下圖所示的默認值改大一些就好了 if "%JvmMs%" "" set JvmMs512 if "%JvmMx%" "" set J…

高防cdn和高防服務器有什么不一樣?

高防cdn&#xff1a; 相信很多看過我們文章的小伙伴對cdn已經很了解了&#xff0c;cdn的原理很簡單&#xff0c;就是構建在網絡上的很多個節點&#xff0c;為網站作內容 分發。使用戶就近獲取所需資源。且分配的cdn節點都是高防節點&#xff0c;每個節點都有防御功能。還…

【考研復習】24王道數據結構課后習題代碼|第3章棧與隊列

文章目錄 3.1 棧3.2 隊列3.3 棧和隊列的應用 3.1 棧 int symmetry(linklist L,int n){char s[n/2];lnode *pL->next;int i;for(i0;i<n/2;i){s[i]p->data;pp->next;}i--;if(n%21) pp->next;while(p&&s[i]p->data){i--;pp->next;}if(i-1) return 1;…

Python flask-restful 框架講解

1、簡介 Django 和 Flask 一直都是 Python 開發 Web 的首選&#xff0c;而 Flask 的微內核更適用于現在的云原生微服務框架。但是 Flask 只是一個微型的 Web 引擎&#xff0c;所以我們需要擴展 Flask 使其發揮出更強悍的功能。 python flask框架詳解&#xff1a;https://blog.…

sentinel簡單使用

核心demo&#xff1a; 1 引入依賴: <dependency><groupId>com.alibaba.csp</groupId><artifactId>sentinel-core</artifactId><version>1.8.0</version> </dependency>2 核心代碼&#xff1a; 3 限流保護代碼&#xff1a;…

【Megatron-DeepSpeed】張量并行工具代碼mpu詳解(四):張量并行版Embedding層及交叉熵的實現及測試

相關博客 【Megatron-DeepSpeed】張量并行工具代碼mpu詳解(四)&#xff1a;張量并行版Embedding層及交叉熵的實現及測試 【Megatron-DeepSpeed】張量并行工具代碼mpu詳解(三)&#xff1a;張量并行層的實現及測試 【Megatron-DeepSpeed】張量并行工具代碼mpu詳解(一)&#xff1a…

【HarmonyOS】@ohos.request 上傳下載的那些事兒

【關鍵字】 ohos.request、上傳下載? 【寫在前面】 在進行HarmonyOS應用開發時&#xff0c;可能需要進行上傳或下載文件功能開發&#xff0c;本文章主要進行上傳下載相關功能介紹和一些注意事項及FAQ。 【上傳開發步驟】 步驟1&#xff1a;上傳下載接口需要申請ohos.permis…

GitOps 與 DevOps:了解關鍵差異,為企業做出最佳選擇

在軟件開發領域&#xff0c;GitOps 和 DevOps 是加強協作和實現軟件交付流程自動化的重要技術。雖然這兩種模式都旨在提高軟件開發生命周期的效率&#xff0c;但它們的核心原則和實施方式卻各不相同。 本篇文章將幫助您了解 GitOps 和 DevOps 之間的差異、它們的工作流程&am…

新知識:Monkey 改進版之 App Crawler

原生Monkey 大家知道Monkey是Android平臺上進行壓力穩定性測試的工具&#xff0c;通過Monkey可以模擬用戶觸摸屏幕、滑動、按鍵等偽隨機用戶事件來對設備上的程序進行壓力測試。而原生的Android Monkey存在一些缺陷&#xff1a; 事件太過于隨機&#xff0c;測試有效性大打折扣…

【2023新教程】樹莓派4B開機啟動-樹莓派第一次啟動-樹莓派不使用顯示器啟動-樹莓派從購買到啟動一步一步完全版!

背景 閑來無事&#xff0c;在咸魚上買了一個樹莓派4B。買來配件都十分齊全&#xff0c;于是就想著啟動來測試一下。下面是樹莓派無顯示器第一次啟動的全過程&#xff0c;包含安裝系統。 網上的教程大多需要額外使用顯示器、鼠標、鍵盤之類的外設。然而&#xff0c;樹莓派本身就…

從一到無窮大 #10 討論 Apache IoTDB 大綜述中看到的優勢和不足點

本作品采用知識共享署名-非商業性使用-相同方式共享 4.0 國際許可協議進行許可。 本作品 (李兆龍 博文, 由 李兆龍 創作)&#xff0c;由 李兆龍 確認&#xff0c;轉載請注明版權。 文章目錄 引言問題定義新技術數據模型schemalessTsfile設計雙MemTable高級可擴展查詢其他 IotD…

免費開源的多種人工智能項目,比如:訓練一個模型,讓人工智能玩王者榮耀

免費開源的多種人工智能項目&#xff0c;比如&#xff1a;訓練一個模型&#xff0c;讓人工智能玩王者榮耀。 全文大綱 PULSE - 該開源項目可以通過給圖片增加像素點來實現去馬賽克或高清化。 Depix - 給打了馬賽克的文字去碼。 TecoGAN - 給視頻去馬賽克或者進行超分辨率。 Sk…

計算機網絡-專業術語

計算機網絡-專業術語 實體 實體:任何可發送或接收信息的硬件或軟件進程 對等實體:收發雙方相同層次中的實體 協議 控制兩個對等實體進行邏輯通信的規則的集合 協議三要素 語法 定義所交換的信息的格式 是用戶數據與控制信息的結構和格式 語義 定義收發雙方所需要完成的操作…

go 切換代理

常用 $ go env -w GO111MODULEon $ go env -w GOPROXYhttps://goproxy.cn,direct 切換成阿里云 go env -w GOPROXYhttps://mirrors.aliyun.com/goproxy/,direct 很多需要切換到阿里云才行 刪除 $ go env -u GOPROXY 查看 $ go env 或者 go env list go get 出錯的時候 …