這篇文章主要介紹了python cgi指的是什么,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括蘇仙網(wǎng)站建設(shè)、蘇仙網(wǎng)站制作、蘇仙網(wǎng)頁制作以及蘇仙網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,蘇仙網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到蘇仙省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
什么是CGI
CGI 目前由 NCSA 維護(hù),NCSA 定義 CGI 如下:
CGI(Common Gateway Interface),通用網(wǎng)關(guān)接口,它是一段程序,運(yùn)行在服務(wù)器上如:HTTP 服務(wù)器,提供同客戶端 HTML 頁面的接口。
網(wǎng)頁瀏覽
為了更好的了解 CGI 是如何工作的,我們可以從在網(wǎng)頁上點(diǎn)擊一個(gè)鏈接或 URL 的流程:
1、使用你的瀏覽器訪問 URL 并連接到 HTTP web 服務(wù)器。
2、Web 服務(wù)器接收到請(qǐng)求信息后會(huì)解析 URL,并查找訪問的文件在服務(wù)器上是否存在,如果存在返回文件的內(nèi)容,否則返回錯(cuò)誤信息。
3、瀏覽器從服務(wù)器上接收信息,并顯示接收的文件或者錯(cuò)誤信息。
CGI 程序可以是 Python 腳本,PERL 腳本,SHELL 腳本,C 或者 C++ 程序等。
CGI架構(gòu)圖
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 程序都保存在一個(gè)預(yù)先配置的目錄。這個(gè)目錄被稱為 CGI 目錄,并按照慣例,它被命名為 /var/www/cgi-bin 目錄。
CGI 文件的擴(kuò)展名為 .cgi,python 也可以使用 .py 擴(kuò)展名。
默認(rèn)情況下,Linux 服務(wù)器配置運(yùn)行的 cgi-bin 目錄中為 /var/www。
如果你想指定其他運(yùn)行 CGI 腳本的目錄,可以修改 httpd.conf 配置文件,如下所示:
AllowOverride None Options +ExecCGI Order allow,deny Allow from all
在 AddHandler 中添加 .py 后綴,這樣我們就可以訪問 .py 結(jié)尾的 python 腳本文件:
AddHandler cgi-script .cgi .pl .py
第一個(gè)CGI程序
我們使用 Python 創(chuàng)建第一個(gè) CGI 程序,文件名為 hello.py,文件位于 /var/www/cgi-bin 目錄中,內(nèi)容如下:
#!/usr/bin/python # -*- coding: UTF-8 -*- print "Content-type:text/html" print # 空行,告訴服務(wù)器結(jié)束頭部 print '' print '' print '' print 'Hello World - 我的第一個(gè) CGI 程序! ' print '' print '' print 'Hello World! 我是來自菜鳥教程的第一CGI程序
' print '' print ''
文件保存后修改 hello.py,修改文件權(quán)限為 755:
chmod 755 hello.py
以上程序在瀏覽器訪問 http://localhost/cgi-bin/hello.py 顯示結(jié)果如下:
Hello World! 我是來自菜鳥教程的第一CGI程序
這個(gè)的hello.py腳本是一個(gè)簡(jiǎn)單的Python腳本,腳本第一行的輸出內(nèi)容"Content-type:text/html"發(fā)送到瀏覽器并告知瀏覽器顯示的內(nèi)容類型為"text/html"。
用 print 輸出一個(gè)空行用于告訴服務(wù)器結(jié)束頭部信息。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享python cgi指的是什么內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來學(xué)習(xí)!