您好,登錄后才能下訂單哦!
這篇文章主要介紹了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指的是什么內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。