創新互聯www.cdcxhl.cn八線動態BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!
創新互聯10多年成都定制網頁設計服務;為您提供網站建設,網站制作,網頁設計及高端網站定制服務,成都定制網頁設計及推廣,對銅雕雕塑等多個領域擁有豐富的網站營銷經驗的網站建設公司。這篇文章主要介紹了python cgi指的是什么,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
什么是CGI
CGI 目前由 NCSA 維護,NCSA 定義 CGI 如下:
CGI(Common Gateway Interface),通用網關接口,它是一段程序,運行在服務器上如:HTTP 服務器,提供同客戶端 HTML 頁面的接口。
網頁瀏覽
為了更好的了解 CGI 是如何工作的,我們可以從在網頁上點擊一個鏈接或 URL 的流程:
1、使用你的瀏覽器訪問 URL 并連接到 HTTP web 服務器。
2、Web 服務器接收到請求信息后會解析 URL,并查找訪問的文件在服務器上是否存在,如果存在返回文件的內容,否則返回錯誤信息。
3、瀏覽器從服務器上接收信息,并顯示接收的文件或者錯誤信息。
CGI 程序可以是 Python 腳本,PERL 腳本,SHELL 腳本,C 或者 C++ 程序等。
CGI架構圖
Web 服務器支持及配置
在你進行 CGI 編程前,確保您的 Web 服務器支持 CGI 及已經配置了 CGI 的處理程序。
Apache 支持 CGI 配置:
設置好CGI目錄:
ScriptAlias /cgi-bin/ /var/www/cgi-bin/
所有的HTTP服務器執行 CGI 程序都保存在一個預先配置的目錄。這個目錄被稱為 CGI 目錄,并按照慣例,它被命名為 /var/www/cgi-bin 目錄。
CGI 文件的擴展名為 .cgi,python 也可以使用 .py 擴展名。
默認情況下,Linux 服務器配置運行的 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 結尾的 python 腳本文件:
AddHandler cgi-script .cgi .pl .py
第一個CGI程序
我們使用 Python 創建第一個 CGI 程序,文件名為 hello.py,文件位于 /var/www/cgi-bin 目錄中,內容如下:
#!/usr/bin/python # -*- coding: UTF-8 -*- print "Content-type:text/html" print # 空行,告訴服務器結束頭部 print '<html>' print '<head>' print '<meta charset="utf-8">' print '<title>Hello World - 我的第一個 CGI 程序!</title>' print '</head>' print '<body>' print '<h3>Hello World! 我是來自菜鳥教程的第一CGI程序</h3>' print '</body>' print '</html>'
文件保存后修改 hello.py,修改文件權限為 755:
chmod 755 hello.py
以上程序在瀏覽器訪問 http://localhost/cgi-bin/hello.py 顯示結果如下:
Hello World! 我是來自菜鳥教程的第一CGI程序
這個的hello.py腳本是一個簡單的Python腳本,腳本第一行的輸出內容"Content-type:text/html"發送到瀏覽器并告知瀏覽器顯示的內容類型為"text/html"。
用 print 輸出一個空行用于告訴服務器結束頭部信息。
感謝你能夠認真閱讀完這篇文章,希望小編分享python cgi指的是什么內容對大家有幫助,同時也希望大家多多支持創新互聯,關注創新互聯-成都網站建設公司行業資訊頻道,遇到問題就找創新互聯,詳細的解決方法等著你來學習!
分享文章:pythoncgi指的是什么-創新互聯
分享網址:http://vcdvsql.cn/article0/epooo.html
成都網站建設公司_創新互聯,為您提供商城網站、響應式網站、網頁設計公司、網站制作、靜態網站、電子商務
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯