1 學習用c c 寫cgi程式

2021-09-08 08:02:33 字數 1709 閱讀 3188

cgi全稱

common gateway inte***ce

(共同程式設計介面),是一種程式設計介面,不論什麼語言,只要按照該介面的標準編寫出來的程式,即可叫做

cgi程式。

cgi 程式的輸入

/輸出是使用程式語言的標準輸入

/標準輸出

,所以用

c/c++

來寫 cgi

程式就好象寫普通程式一樣。

1)cgi

程式的通訊方式

當有資料從瀏覽器傳到

web

伺服器後,該伺服器會根據傳送的型別(基本有二類:

get/post

),將這些接收到的資料

傳入

query_string

或變數中,

cgi程式可以通過標準輸入,在程式中接收這些資料。當要向瀏覽器傳送資訊時,只要

web伺服器傳送特定的檔案頭資訊,即可通過標準輸出將資訊發往

web伺服器

,web

伺服器處理完這些由

cgi程式發來的資訊後就會將這些資訊傳送給瀏覽器。這樣就是

cgi程式的通訊方式了。

2)接收資料

get方式接收到的資料儲存在

web伺服器的

query_string

變數裡,而通過

post

方式接收到的資料是儲存在這個

web伺服器變數裡。

它們的唯一區別就是:以

get方式接收的資料是有長度限制;而用

post

方式接收的資料是沒有長度限制的。並且,以

get方式傳送資料,可以通過

url的形式來傳送,但

post

方式傳送的資料必須要通過

form

才到傳送。

將程式用

gcc編譯,結果放在放在

/cgi/bin

目錄下,在

brower

中輸入程式示例

則可輸出

hello,world

。see more in 【1】

3、使用cgi處理get和post的資料請求簡單示例

說明:apache+suse10.1

cgi程式

#include 

<

stdio.h

>

#include

<

stdlib.h

>

#define

maxlen 80

intmain(

void

)else

}

if(strcmp(prequestmethod,

"get")

==0)

return

0;

}

html程式

【1

】 】 【

2】

用c寫CGI 程式簡要指南

將 轉換成空格符 xx 用其十六進製制ascii碼值表示的特殊字元。根據值xx將其轉換成相應的ascii字元。對form變數名和變數值都要進行這種轉換。下面是乙個對form資料進行分析並將結果回送給web伺服器的cgi程式。include include include int htoi char ...

C語言寫CGI 程式簡要指南

cgi common gateway inte ce 公用閘道器介面 規定了web伺服器呼叫其他可執行程式 cgi程式 的介面協議標準。web伺服器通過呼叫cgi程式實現和web瀏覽器的互動,也就是cgi程式接受web瀏覽器傳送給web伺服器的資訊,進行處理,將響應結果再回送給web伺服器及web瀏...

寫乙個CGI程式並執行

準備linux和apache 我在 var www cgi bin 下建乙個檔案get.c include include int main void 然後編譯 gcc o get.cgi get.c 編譯完後會生成乙個get.cgi檔案 然後我配置apache,我是這麼配置的 我的apache是2...