Windows 配置Apache以便在瀏覽器中運(yùn)行Python script的CGI模式
現(xiàn)在因?yàn)橐呀?jīng)安裝了2.6的Python,以及支持2.6的Eric4,就不想再重新安裝2.5來繼續(xù)配置Apache下mod_python了。
后來發(fā)現(xiàn)了一篇文章Running Python as CGI in Apache in Windows ,講述以CGI模式代替mod_python來運(yùn)行python script。還有這篇Python for Windows 。
做法是:
打開httpd.conf,找到”#ScriptInterpreterSource Registry “,移除前面的注釋# (如果找不到這行,就自己添加進(jìn)去)
找到“Options Indexes FollowSymLinks ”這句,在后面加上”ExecCGI “。(那個(gè)”Indexes “最好也能去掉,因?yàn)槿绻蝗サ舻脑?,目錄下面沒有index.html這種文件,就會(huì)顯示出目錄列表下的所有文件,所以有安全漏洞問題。如果去掉Indexes,而且沒有index.html文件的話,就會(huì)顯示一個(gè)Forbidden頁面)
找到”AddHandler cgi-script .cgi “,在后面加上 .py。如果沒有這句,可以自己添加 “AddHandler cgi-script .py”
重新啟動(dòng)Apache即可 (有的時(shí)候restart會(huì)導(dǎo)致Apache死掉,所以碰到這種情況的人可以stop先再start)
然后創(chuàng)建一個(gè)test.py script,
print "Content-type: text/html"
print ""
print "<html><head></head><body>"
print "Hello World"
print "</body></html>"注意第二句print “”不能少,如果沒有這句,會(huì)引起一個(gè) “500 Internal Server Error” 錯(cuò)誤。
在瀏覽器中運(yùn)行http://localhost/test.py,Hello World兩個(gè)字被輸出后表明運(yùn)行正常。
另外,有些錯(cuò)誤提示如下:
沒有添加ScriptInterpreterSource Registry,會(huì)出現(xiàn)500 Internal Server Error 錯(cuò)誤。
沒有添加ExecCGI,會(huì)出現(xiàn)403 Forbidden You don't have permission to access /test.py on this server 。
沒有添加AddHandler cgi-script .py,那內(nèi)容就會(huì)以text文本式樣顯示在瀏覽器中。
注 :
添加ScriptInterpreterSource Registry的用意是讓W(xué)indows用Registry來找到Python的安裝地方。
ExecCGI是讓python script可以運(yùn)行在任意目錄下面,因?yàn)锳pache默認(rèn)是讓cgi script運(yùn)行在cgi-bin目錄下。而我把test.py放到htdocs下運(yùn)行就會(huì)出現(xiàn)403 Forbidden的問題。所以需要加上ExecCGI,這樣就可以在htdocs下運(yùn)行.py script了。但是ExceCGI會(huì)有安全漏洞的問題。用FastCGI會(huì)安全一些。但是前提是需要安裝上FastCGI才可以。
CGI模式比mod_python模式要慢。所以以后有機(jī)會(huì)在別的電腦上再試試mod_python模式吧。
- python創(chuàng)建ArcGIS shape文件的實(shí)現(xiàn)
- 利用arcgis的python讀取要素的X,Y方法
- Python的CGIHTTPServer交互實(shí)現(xiàn)詳解
- 基于Python_腳本CGI、特點(diǎn)、應(yīng)用、開發(fā)環(huán)境(詳解)
- 在arcgis使用python腳本進(jìn)行字段計(jì)算時(shí)是如何解決中文問題的
- 使用FastCGI部署Python的Django應(yīng)用的教程
- 在IIS服務(wù)器上以CGI方式運(yùn)行Python腳本的教程
- 使用python實(shí)現(xiàn)CGI環(huán)境搭建過程解析
相關(guān)文章
Linux企業(yè)運(yùn)維人員常用的150個(gè)命令分享
這篇文章主要介紹了Linux企業(yè)運(yùn)維人員常用的150個(gè)命令(歡迎補(bǔ)充),具體多少個(gè)來著,我也沒數(shù)。分享給大家,供需要的朋友參考。2017-10-10CentOS 5.4 服務(wù)器配置 yum安裝Apache+php+Mysql
Centos 里的 yum 在線安裝很慢.以下是替換為中國CentOS鏡像服務(wù)器!2010-03-03LINUX安全設(shè)置之關(guān)于GRUB加密圖文教程全解
關(guān)于LINUX的啟動(dòng)裝載程序GRUB加密,算是一件很平常的工作。但是今天我在網(wǎng)上查這個(gè)東西,發(fā)現(xiàn)好多人都寫的很簡單,而且方法都比較過時(shí)。所以,在此我更新下GRUB加密。和大家分享下。2010-03-03linux文件上傳,給文件或目錄添加apache權(quán)限的方法
下面小編就為大家?guī)硪黄猯inux文件上傳,給文件或目錄添加apache權(quán)限的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-11-11Linux中查看物理CPU個(gè)數(shù)、核數(shù)、邏輯CPU個(gè)數(shù)的方法
下面小編就為大家?guī)硪黄狶inux中查看物理CPU個(gè)數(shù)、核數(shù)、邏輯CPU個(gè)數(shù)的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-01-01