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

我已经在网上搜索了很多它说您必须使用以下配置配置 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

4

1 回答 1

-1

现在问题已经解决了。我还是会分享我的经验。第一个问题是我的 python 脚本我忘了插入 "\n\n" (print "Content-type: text/html\n\n") [mid it \n\n 紧随其后的标题没有任何空格(打印"Content-type: text/html \n\n") 这将不起作用]在内容描述标题的末尾。其次,我将文件保存为 .py 但它应该是 .cgi 其他一切都很好。我的脚本现在正在执行。谢谢

于 2013-08-20T19:49:26.787 回答