CGI在Apache上的配置

2021-08-01 15:04:22 字數 1320 閱讀 2503

想寫個前台頁面傳送ajax請求到後台用c語言編寫的cgi程式,並成功返回結果。原始碼都很簡單,都有,結果在除錯配置時遇到了乙個又乙個問題。特記錄之。

過程參考:

1、先貼**:ajaxtest1.htm

suggest:

instruction: 

cgi_main.c

#include

#include

#include

int main(void) 

else

printf("content-type: text/html;charset=utf-8\n\n");

if(strstr(lenstr,"txtida")!=null)

if(strstr(lenstr,"txtidb")!=null)

return 0; 

} 2、用dev-c++編譯生成cgi執行檔案。

顯示亂碼是因為我是在ubuntu中用gcc編譯的,然後想放在windows10上跑,當然跑不過啦。在apache中的日誌檔案中看錯誤是這樣的:gcc: internal error: aborted (program collect2)

3、檔案目錄:

其中ajaxtest1.htm是訪問的頁面,其中的邏輯處理ajax請求就是呼叫的上面ajaxtest1cgi資料夾中的.cgi程式,從而實現頁面的動態載入。

ajaxtest1cgi資料夾如下圖:

其中的ajaxtest1.cgi就是用dev-c++編譯cgi_main.c得到的.cgi檔案。

在cmd控制台中cd到e:\program files\apache24\htdocs\ajaxtest1cgi目錄下,然後輸入命令:gcc -o ajaxtest1.cgi cgi_main.c,就可以編譯生成.cgi檔案了。

在ajaxtest1.htm中的xmlhttp.open("get","/ajaxtest1cgi/ajaxtest1.cgi?txtidb="+str,true);就是在ajax請求,並且請求的cgi檔案路徑都已經寫好,所以能夠呼叫到編譯好的cgi檔案了。

4、除錯結果:

1.2. //apache對cgi的支援配置

4. //gcc編譯生成cgi檔案,gcc環境變數配置

Apache 上的 CGI 配置與測試

平台與工具 windows xp,apache 2.0.59,activeperl 5.6.1.628 mswin32 x86 multi thread.msi,vc 6.0,turboc 2.0 scriptalias cgi bin f php code cgi bin allowoverrid...

C語言cgi程式在apache上的實現

本文介紹使用apache實現c語言寫的cgi程式。必要條件,安裝apache。首先建立c程式,這裡就不多介紹。參照前面的文章或者其它的參考書籍。建立檔案hello.c,內容如下 include int main 編繹hello.c,生成hello.exe。把hello.exe檔案拷到 apache安...

配置apache執行cgi程式

配置apache執行cgi程式可分為兩種情況,一是scriptalias目錄的cgi,二是scriptalias以外目錄的cgi。scriptalias目錄的cgi scriptalias指令使apache允許執行乙個特定目錄中的cgi程式。當客戶端請求此特定目錄中的資源時,apache假定其中檔案...