1. 程式人生 > >2018年9月25日python的web框架Django入門的理論知識

2018年9月25日python的web框架Django入門的理論知識

好久沒有更新文章了,罪過罪過,以後要堅持更新文章!不能再懶了!

 

儲存器容量大小的轉換:

1TB = 1024GB

1PB = 1024TB

1EB = 1024PB

1ZB = 1024EB

…………

1、什麼是軟體
    軟體就是解決某一問題或者某類問題的指令集合,是一個工具,是一個程序,是程式。

程式碼:指令集
程式:具有執行環境的程式碼集合
軟體:打包之後的程式 類似於.exe這樣的可執行的程式

 

2.軟體的分類:

按照功能來分:

       |--系統軟體:

      |--應用軟體:

                   是否需要聯網:

                           |--單擊軟體

                          |--網路軟體

                                根據軟體的架構:

                                    | --C/S(client/server) 架構

                                                   優點:使用者友好度較高
                                                   缺點:開發複雜,需要同時開發客戶端和服務端

                                    |-- B/S(browser/server) 架構
                        
                                                 優點:開發簡單, 以後發展的趨勢
                                                 缺點:大眾化

      |--中介軟體:

             F7  負載均衡

3、什麼是web
    web是 網路的意思
    www(wide world web)全球資訊網/網際網路/因特網

4、什麼是web軟體
    基於web協議實現的軟體,web軟體

協議:網路協議是通訊計算機雙方必須共同遵從的一組約定。如怎麼樣建立連線、怎麼樣互相識別等。只有遵守這個約定,計算機之間才能相互通訊交流...

ARP(Address Resolution Protocol)即地址解析協議,是根據IP地址獲取實體地址的一個TCP/IP協議

IP是Internet Protocol,網路之間互連的協議

ISO: 國際標準化組織

OSI: 開放式通訊系統互聯參考模型(Open System Interconnection,OSI/RM,Open Systems Interconnection Reference Model),是國際標準化組織(ISO)提出的一個試圖使各種計算機在世界範圍內互連為網路的標準框架,簡稱OSI,七層模型。

IOS: 蘋果的作業系統

OSI/RM七層協議(使不同型號的計算機能夠通訊): 
    應用層
    表示層
    會話層
    傳輸層
    網路層
    資料鏈路層
    物理層

    TCP/IP協議族:代表了很多協議
        http https Telnet ssh tcp ip udp ftp。。。。

OSI七層模型中會話層是幹嘛的?

會話層: 允許通過名稱建立連線

 

常用協議的預設埠(為了安全考慮預設埠可以換):

Ftp: 21  (Ftp使用的是兩個埠,20和21, 20埠用於資料傳輸,21埠用於控制信令的傳輸,控制資訊和資料能夠同時傳輸,這是FTP的特殊之處, FTP採用的是TCP連線。)

SSH : 22  SSH(Secure Shell)安全外殼協議,更多的則被設計為加強Telnet/FTP安全的傳輸協議, 可以對所有傳輸的資料進行加密。(專為遠端登入會話和其他網路服務提供安全性的協議) ,可以有效的防止DNS和IP欺騙。

Telnet: 23

http: 80

https: 443

tcp: 要自己定

 

SSL(Secure Sockets Layer 安全套接層) , HTTPS(Hypertext Transfer Protocol Secure安全超文字傳輸協議, HTTPS實際上應用了Netscape的安全套接字層(SSL)作為HTTP應用層的子層, 為Internet上的網路通訊提供安全及資料完整性的一種安全協議,

http不安全因為是明文傳輸資料,https是加密比http安全性高。

 

SSH和SSL的區別:

SSL是通訊鏈路的附加層。可以包含很多協議。https, ftps, .....ssh只是加密的shell,最初是用來替代telnet的。通過port forward,也可以讓其他協議通過ssh的隧道而起到加密的效果。通過使用SSH,你可以把所有傳輸的資料進行加密,這樣“中間人”這種攻擊方式就不可能實現了,而且也能夠防止DNS和IP欺騙。還有一個額外的好處就是傳輸的資料是經過壓縮的,所以可以加快傳輸的速度。SSH有很多功能,它既可以代替telnet,又可以為ftp、pop、甚至ppp提供一個安全的“通道”。SSH是由客戶端和服務端的軟體組成的,有兩個不相容的版本分別是:1.x和2.x。用SSH 2.x的客戶程式是不能連線到SSH 1.x的服務程式上去的。OpenSSH 2.x同時支援SSH 1.x和2.x。

 

系統是做什麼的: 對硬體進行第一次的擴充

http就是用於傳輸html的

 

公鑰私鑰的加密?

公鑰是公開的,私鑰只有自己知道,A給B發訊息,A就用B的公鑰加密,B收到訊息後就用自己的私鑰解密。B給A發訊息,B就用A的公鑰加密,A收到訊息後就用自己的私鑰解密。

 

MIME (Multipurpose Internet Mail Extensions) 是描述訊息內容型別的因特網標準。MIME 訊息能包含文字、影象、音訊、視訊以及其他應用程式專用的資料。MIME(Multipurpose Internet Mail Extensions)多用途網際網路郵件擴充套件型別。是設定某種副檔名檔案用一種應用程式來開啟的方式型別,當該副檔名檔案被訪問的時候,瀏覽器會自動使用指定應用程式來開啟。多用於指定一些客戶端自定義檔名,以及一些媒體檔案開啟方式。

URI > URL

統一資源識別符號 > 統一資源定位器, HTTP用URI傳輸資料和建立連線, URL是一種特殊的URI, 包含了用於查詢某個資源的足夠的資訊。

什麼是TCP,和UDP,以及兩者的區別:

TCP: (Transmission Control Protocol,傳輸控制協議)是一種面向連線的、可靠的,基於位元組流的傳輸層通訊協議,傳送資料之前需要建立連線,TCP提供可靠的服務。也就是說,通過TCP連線傳送的資料,無差錯,不丟失,不重複,且按序到達, TCP面向位元組流,實際上是TCP把資料看成一連串無結構的位元組流, TCP的優點:可靠,穩定,缺點: 慢,效率低,佔用系統資源高。

 

UDP: (User Datagram Protocol 使用者資料報協議), UDP 協議是無連線的資料傳輸協議, 傳送資料之前不需要建立連線,UDP盡最大努力交付,即不保證可靠交付,UDP是面向報文的, UDP優點:連線速度快,比TCP稍安全, 缺點: 不可靠,不穩定,有些應用場景對可靠性要求不高會用到UPD,比如長視訊,要求速率

http有八種請求方式

         get, post, put,  delete,  option,  head, track ,  connect

       get和post請求的區別?

get是從伺服器請求資料,post是向伺服器提交資料。

1.實際應用中POST和GET都是向伺服器提交資料,並且都會從伺服器獲取資料。

2、在客戶端, get方式在通過URL提交引數資料,資料在URL中可以看到,是裸露的;post方式,資料放置在HTML HEADER內提交,從URL中是看不到的
3、對於get方式,伺服器端用Request.QueryString獲取變數的值,對於post方式,伺服器端用Request.Form獲取提交的資料。
4、get方式提交的資料最多隻能有1024位元組,而post則沒有此長度限制
5、安全性問題。正如在2中提到,使用get的時候,引數會顯示在位址列上,而 post 不會。所以,如果這些資料是中文資料而且是非敏感資料,那麼使用 get ;如果使用者輸入的資料不是中文字元而且包含敏感資料,那麼還是使用 post為好

 

 

WSGI,全稱 Web Server Gateway Interface,web服務網管介面,或者 Python Web Server Gateway Interface ,是為 Python 語言定義的 Web 伺服器和 Web 應用程式或框架之間的一種簡單而通用的介面,也就是說,WSGI就像是一座橋樑,一邊連著web伺服器,另一邊連著應用程式或者框架。所謂的 WSGI中介軟體同時實現了API的兩方,因此可以在WSGI服務和WSGI應用之間起調解作用:從WSGI伺服器的角度來說,中介軟體扮演應用程式,而從應用程式的角度來說,中介軟體扮演伺服器

wsgi 服務介面的作用:

       1、路由功能,通過url/uri進行對應的路由選擇,路由分發

       2、引數解析

def index(env, response):

env:客戶端的環境, env中的PATH_INFO中是路徑資訊,QUERY_STRING中是傳遞的引數

 

get方式的請求中傳參的格式是:/?name=wuc&id=10