招生電話:0816-8119777
新聞詳情

python教程——CGI編程

發(fā)表時間:2023-05-24 17:33

什么是CGI

CGI 目前由NCSA維護(hù),NCSA定義CGI如下:


CGI(Common Gateway Interface),通用網(wǎng)關(guān)接口,它是一段程序,運行在服務(wù)器上如:HTTP服務(wù)器,提供同客戶端HTML頁面的接口。


網(wǎng)頁瀏覽

為了更好的了解CGI是如何工作的,我們可以從在網(wǎng)頁上點擊一個鏈接或URL的流程:


1、使用你的瀏覽器訪問URL并連接到HTTP web 服務(wù)器。

2、Web服務(wù)器接收到請求信息后會解析URL,并查找訪問的文件在服務(wù)器上是否存在,如果存在返回文件的內(nèi)容,否則返回錯誤信息。

3、瀏覽器從服務(wù)器上接收信息,并顯示接收的文件或者錯誤信息。

CGI程序可以是Python腳本,PERL腳本,SHELL腳本,C或者C++程序等。


CGI架構(gòu)圖

cgiarch


Web服務(wù)器支持及配置

在你進(jìn)行CGI編程前,確保您的Web服務(wù)器支持CGI及已經(jīng)配置了CGI的處理程序。


Apache 支持CGI 配置:


設(shè)置好CGI目錄:


ScriptAlias /cgi-bin/ /var/www/cgi-bin/

所有的HTTP服務(wù)器執(zhí)行CGI程序都保存在一個預(yù)先配置的目錄。這個目錄被稱為CGI目錄,并按照慣例,它被命名為/var/www/cgi-bin目錄。


CGI文件的擴(kuò)展名為.cgi,python也可以使用.py擴(kuò)展名。


默認(rèn)情況下,Linux服務(wù)器配置運行的cgi-bin目錄中為/var/www。


如果你想指定其他運行CGI腳本的目錄,可以修改httpd.conf配置文件,如下所示:


<Directory "/var/www/cgi-bin">

   AllowOverride None

   Options +ExecCGI

   Order allow,deny

   Allow from all

</Directory>

在 AddHandler 中添加 .py 后綴,這樣我們就可以訪問 .py 結(jié)尾的 python 腳本文件:


AddHandler cgi-script .cgi .pl .py

第一個CGI程序

我們使用Python創(chuàng)建第一個CGI程序,文件名為hello.py,文件位于/var/www/cgi-bin目錄中,內(nèi)容如下:


實例

#!/usr/bin/python3


print ("Content-type:text/html")

print ()                             # 空行,告訴服務(wù)器結(jié)束頭部

print ('<html>')

print ('<head>')

print ('<meta charset="utf-8">')

print ('<title>Hello Word - 我的第一個 CGI 程序!</title>')

print ('</head>')

print ('<body>')

print ('<h2>Hello Word! 我是來自菜鳥教程的第一CGI程序</h2>')

print ('</body>')

print ('</html>')

文件保存后修改 hello.py,修改文件權(quán)限為 755:


chmod 755 hello.py


辦公室/傳真:0816-8119666
招生辦:0816- 8119777
地址:四川省綿陽市園藝山教育園區(qū)
郵箱:mzsyxxzsb@sina.com
官方服務(wù)號
官方訂閱號
官方視頻號
官方抖音號
官方微博號
北京英才苑
四川省電化教育館
綿陽教育體育館
綿陽招生考試網(wǎng)
友情鏈接:
亚洲色图之中文字幕,日本片aa在线看,免费国产人成18在线观看,,一级国产高清 免费 观看,亚洲视频在线观看一区,亚洲第一av婷婷五月天,亚洲人成欧美中文幕