本文是學(xué)習(xí)Linux平臺Python web編程的一些理解性總結(jié),串聯(lián)一下知識,作為學(xué)習(xí)閉環(huán)的輸出,也方便以后復(fù)習(xí)。
僅作為自己學(xué)習(xí)的總結(jié)與記錄,且為初學(xué),作為階段性理解,難免有很多錯(cuò)誤,以后再更正。
? 之前是在Java課上學(xué)過網(wǎng)絡(luò)編程的,不過當(dāng)時(shí)完全沒有理解,什么套接字,什么握手,只記得實(shí)驗(yàn)做過一個(gè)客戶端與服務(wù)器兩個(gè)程序的互動(dòng)。然后當(dāng)時(shí)也學(xué)過數(shù)據(jù)庫,自己理解數(shù)據(jù)庫就是放在服務(wù)器上,然后服務(wù)器與數(shù)據(jù)庫的區(qū)別很模糊。
? 其實(shí)服務(wù)器只是起服務(wù)作用的一端(服務(wù)端)
作為數(shù)據(jù)庫的平臺的服務(wù)器只是其中一種,除此之外還有web服務(wù)器,(web服務(wù)器應(yīng)該也提供數(shù)據(jù)庫操作服務(wù)),應(yīng)該還有其他很多種服務(wù)器我暫時(shí)沒有了解到,反正它只是為客戶端提供某種服務(wù),這樣做的優(yōu)勢是可以實(shí)現(xiàn)數(shù)據(jù)共享(我想的,應(yīng)該還有其他優(yōu)勢,后期補(bǔ)充)
而數(shù)據(jù)庫技術(shù)只是對數(shù)據(jù)管理的一種技術(shù)
比起之前的文件管理等方式更加高效與靈活。數(shù)據(jù)庫可以搭建在自己的電腦上為自己管理數(shù)據(jù)提供方便,而搭建在一臺作為服務(wù)端的計(jì)算機(jī)上,從而實(shí)現(xiàn)與客戶端的數(shù)據(jù)共享,這臺計(jì)算機(jī)就是一臺數(shù)據(jù)庫服務(wù)器。
套接字編程

沒有很理解,特別是與后面的Apache web服務(wù)器有什么交集?
應(yīng)該是Apache利用了套接字網(wǎng)絡(luò)編程的技術(shù),后面弄懂了再補(bǔ)充。
對這個(gè)東西暫時(shí)的理解就是它可以實(shí)現(xiàn)客戶端與服務(wù)器的交互,可以傳輸字節(jié) 流(流?)。
字節(jié)信息再通過程序分析就知道內(nèi)容了。
知道服務(wù)器(服務(wù)器會(huì)實(shí)現(xiàn)套接字與主機(jī)地址和端口的綁定)的host和port,客戶端就可以連接了(不要密碼怎么安全?)。
客戶機(jī)服務(wù)器在同一臺電腦上用localhost
所以套接字是什么?
此處留給自己理解后回答。
LAMP服務(wù)器環(huán)境
PHP是一種流行的web編程語言?
LAMP(Linux+Apache+MySQL+PHP)是一種追受歡迎的服務(wù)器環(huán)境。
電腦客戶端、手機(jī)app對接服務(wù)器也是用這套環(huán)境嗎?
LAMP環(huán)境搭建在Linux上,在Linux上安裝MySQL提供數(shù)據(jù)庫服務(wù),再安裝Apache web服務(wù)器,安裝后自動(dòng)啟動(dòng),此時(shí)可以通過IP做為URL在瀏覽器上連接這個(gè)基于Linux 的Apache web服務(wù)器了,瀏覽器會(huì)顯示提示成功的測試網(wǎng)頁。
下一步就是提供HTML文件了,這是web服務(wù)器的核心功能,我學(xué)習(xí)的是基于樹莓派,默認(rèn)情況下需要把web文檔(HTML)放在/var/www下(其他系統(tǒng)也應(yīng)該是一個(gè)固定的文件目錄)。放好后,訪問http://host/xxx.html,瀏覽器就可以通過這個(gè)HTML渲染出頁面了。
CGI公共網(wǎng)關(guān)接口
CGI是Apache web服務(wù)器的一個(gè)特性,他允許遠(yuǎn)程客戶端在托管服務(wù)器上運(yùn)行shell腳本,但是要放在特定文件目錄中(這個(gè)目錄要做權(quán)限設(shè)置,因?yàn)槔锩婵赡馨瑪?shù)據(jù)庫密碼等保密內(nèi)容)??梢园裀ython腳本放在里面做為邏輯程序,前面必須告訴shell這是Python腳本:#!/usr/bin/python3。
有了CGI就可以用網(wǎng)頁運(yùn)行Python腳本,Python腳本可以訪問服務(wù)器本機(jī)的MySQL數(shù)據(jù)庫,從而實(shí)現(xiàn)客戶端與數(shù)據(jù)庫的數(shù)據(jù)共享,Python腳本還可以實(shí)現(xiàn)網(wǎng)頁的邏輯運(yùn)算。
至于PHP怎么實(shí)現(xiàn)的自己沒有了解,日后了解再補(bǔ)充。
在簡書上寫知識總結(jié)作為學(xué)習(xí)閉環(huán)的輸出環(huán)節(jié)是個(gè)不錯(cuò)的選擇,還可以以用來作為復(fù)習(xí)的材料。加油!