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