2012-12-21 45 views
0

我有一個Ubuntu10.04操作系統的系統。我有我的Apache Tomcat(6.0.29)安裝在/ usr/local/tomcat/
我有一個python腳本hello.py
我想在cgi-bin中運行這個python腳本。
Python是在/ usr/bin/python
我運行的應用程序是eegis,它運行正常。
http://localhost:8080/eegis/index.html配置Apache Tomcat 6.0在linux系統上的cgi-bin內運行python腳本?

我已經在網上搜了很多它說你必須配置web.xml以下配置。

<servlet> 
<servlet-name>cgi</servlet-name> 
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class> 
<init-param> 
<param-name>debug</param-name> 
<param-value>0</param-value> 
</init-param> 
<init-param> 
<param-name>cgiPathPrefix</param-name> 
<param-value>WEB-INF/cgi</param-value> 
</init-param> 
<init-param> 
<param-name>executable</param-name> 
<param-value>/usr/bin/python</param-value> 
</init-param> 
<init-param> 
<param-name>passShellEnvironment</param-name> 
<param-value>true</param-value> 
</init-param> 
<load-on-startup>5</load-on-startup> 
</servlet> 

我已經註釋去掉,這也是

<servlet-mapping> 
<servlet-name>cgi</servlet-name> 
<url-pattern>/cgi-bin/*</url-pattern> 
</servlet-mapping> 

我已經這樣做了,但我仍無法運行Python腳本。
雖然試圖http://localhost:8080/eegis/cgi-bin/hello.py

我收到此錯誤

HTTP狀態404 -/eegis/cgi-bin目錄/
類型狀態報告
消息/ eegis/cgi-bin目錄/
描述請求資源(/ eegis/cgi-bin /)不可用。
的Apache Tomcat/6.0.29

+1

現在問題已經解決。不過我會分享我的經驗。第一個問題是我的Python腳本忘了插入「\ n \ n」(打印「Content-type:text/html \ n \ n」)[ 「Content-type:text/html \ n \ n」),這將不會在內容描述標題的結尾處起作用。其次,我將文件保存爲.py,但它應該是.cgi,其他所有內容都很好。我的腳本現在正在執行。謝謝 – LotusCloud

回答

-1

的問題已經得到解決。不過我會分享我的經驗。第一個問題是我的Python腳本忘了插入「\ n \ n」(打印「Content-type:text/html \ n \ n」)[ 「Content-type:text/html \ n \ n」),這將不會在內容描述標題的結尾處起作用。其次,我將文件保存爲.py,但它應該是.cgi,其他所有內容都很好。我的腳本現在正在執行。謝謝