一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

WEB那點(diǎn)事

 薛董_艾瑞 2018-03-27

入行五六年了,很少提筆寫整塊的博客,近來越發(fā)感覺到了一定的階段,需要去整理一些文字已慰自己逝去的青春。

WEB,不就是那點(diǎn)事嗎?

相信很多同學(xué)都知道,Apache、Tomacat,IIS等web服務(wù)器在運(yùn)行的時(shí)候,會調(diào)用PHP,Java、.Net 等應(yīng)用程序服務(wù)來執(zhí)行具體的對數(shù)據(jù)庫的相關(guān)操作。

那么他們直接具體是什么關(guān)系呢?

又跟CGI有什么關(guān)系呢?

================================================================================

先來看看CGI是什么玩意。

CGI:通用網(wǎng)關(guān)接口(Common Gateway Interface)是一個Web服務(wù)器主機(jī)提供信息服務(wù)的標(biāo)準(zhǔn)接口。

通過CGI接口,Web服務(wù)器就能夠獲取客戶端提交的信息,轉(zhuǎn)交給服務(wù)器端的CGI程序進(jìn)行處理,最后返回結(jié)果給客戶端。

組成CGI通信系統(tǒng)的是兩部分:一部分是html頁面,就是在用戶端瀏覽器上顯示的頁面。另一部分則是運(yùn)行在服務(wù)器上的Cgi程序。

它們之間的通訊方式如下圖:


那么這里的CGI程序是個什么概念呢?

CGI程序就是真正的被服務(wù)器(如Apache)調(diào)用的來處理用戶發(fā)送過來的數(shù)據(jù)的程序。所謂CGI程序就是按照CGI接口規(guī)范編寫的能夠處理用戶通過瀏覽器發(fā)送到服務(wù)器的數(shù)據(jù)的

一個程序。

首先,這個程序必須要按照CGI接口規(guī)范來寫。

前面已經(jīng)說過了,CGI的學(xué)名就是通用網(wǎng)關(guān)接口,我們知道網(wǎng)關(guān)的概念是聯(lián)通一個網(wǎng)絡(luò)和另一個網(wǎng)絡(luò)的通道,那么這里我個人的理解就

是CGI這個網(wǎng)關(guān),是連通web服務(wù)器這個大容器和服務(wù)器上其它資源(如:數(shù)據(jù)庫、文件)的一個通道。為什么需要網(wǎng)關(guān)進(jìn)行連接呢,我們知道根據(jù)web服務(wù)器的設(shè)計(jì)規(guī)范來說,

web服務(wù)器只能操作它根目錄下的相關(guān)文件(如:Apache服務(wù)器默認(rèn)只能操作/htdocs 這個目錄下的文件)。那么對于web服務(wù)器以外的資源,如果服務(wù)器想要操作怎么辦呢?

就需要用到CGI這個接口,這個接口定義了web服務(wù)器在操作其權(quán)限范圍以外的資源時(shí)需要遵循的規(guī)范及數(shù)據(jù)傳遞的方式。

有了上面這個理解,我們知道,CGI其實(shí)是一個接口規(guī)范,并且按照CGI接口規(guī)范開發(fā)的程序都可以叫做CGI程序。那么可以用來開發(fā)CGI的程序有哪些呢?C、Java、PHP、

Perl、Asp、.Net等。

用Perl編寫的CGI程序后綴為:.pl;Python編寫的CGI程序后綴為:.py;而C編寫的CGI程序后綴為:.cgi,如果在win下編譯出來的是.exe,最好將它重命名為.cgi。

這些都是為了HTTP服務(wù)能夠識別并調(diào)用它們。


其實(shí)最早的時(shí)候CGI程序是用C語言來編寫的,有興趣的同學(xué)可以參考這篇文章,很不錯http://blog.csdn.net/clearver/article/details/5209332。

后來隨著互聯(lián)網(wǎng)的發(fā)展,逐步又有了豐富多彩的各種新的開發(fā)語言。

那么我們從瀏覽器點(diǎn)擊一個按鈕向服務(wù)器發(fā)起請求這個過程是怎么來處理的呢?

回想一下,我們在表單中有一個叫做Action的屬性,<Form action="xxx">,首先這個請求會被發(fā)送到web服務(wù)器,然后web服務(wù)器根據(jù)你發(fā)過來URL請求找到相對應(yīng)的CGI程

序(如:login.php)。然后web服務(wù)器會把數(shù)據(jù)按照CGI的接口標(biāo)準(zhǔn)傳遞給相應(yīng)的CGI程序,對應(yīng)的CGI程序處理過請求后,會返回?cái)?shù)據(jù),或者文件(一般是HTMl)給服務(wù)器,服務(wù)

器會把結(jié)果返回給瀏覽器,瀏覽器負(fù)責(zé)呈現(xiàn)用戶請求的處理結(jié)果。

這樣一個請求就算完成了,其實(shí)這個過程和我理解的web請求過程沒有太大的區(qū)別,只是這里我在闡述CGI這個概念。

如果有興趣,可以用C來實(shí)現(xiàn)一個CGI程序。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    国产日韩熟女中文字幕| 丰满人妻少妇精品一区二区三区| 日韩成人中文字幕在线一区| 日本高清不卡一二三区| 国产丝袜女优一区二区三区| 蜜桃传媒视频麻豆第一区| 国产又粗又猛又长又黄视频| 亚洲美女国产精品久久| 亚洲少妇一区二区三区懂色| 老熟女露脸一二三四区| 精品欧美日韩一区二区三区| 极品熟女一区二区三区| 久久国产亚洲精品成人| 国产农村妇女成人精品| 五月婷婷六月丁香狠狠| 午夜免费精品视频在线看| 99久久精品免费精品国产| 色婷婷久久五月中文字幕| 欧美日韩国产一级91| 日本高清视频在线观看不卡| 日韩夫妻午夜性生活视频| 亚洲中文字幕在线观看四区| 日本高清不卡一二三区| 99久久国产精品免费| 久久精品中文扫妇内射| 欧美黄色黑人一区二区| 国产日产欧美精品视频| 日韩和欧美的一区二区三区| 日韩精品一区二区三区av在线| 黄片在线观看一区二区三区| 日韩一区二区三区在线日| 少妇丰满a一区二区三区| 亚洲一区精品二人人爽久久| 四季精品人妻av一区二区三区 | 粉嫩国产美女国产av| 麻豆tv传媒在线观看| 高跟丝袜av在线一区二区三区| 欧美日韩国产成人高潮| 欧美一区二区三区喷汁尤物| 色综合伊人天天综合网中文 | 91免费精品国自产拍偷拍|