我有一个使用Ubuntu10.04操作系统的系统
我在/ usr / local / tomcat /
安装了我的Apache tomcat(6.0.29)
我有一个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 /
类型状态报告
message / eegis / cgi-bin /
description请求的资源(/ eegis / cgi-bin /)不可用
Apache Tomcat / 6.0.29
答案 0 :(得分:-1)
现在问题已经解决了。我仍然会分享我的经验。第一个问题是我的python脚本我忘了插入“\ n \ n”(打印“Content-type:text / html \ n \ n”)[中间\ n \ n在标题之后立即没有任何空格(打印) “内容类型:text / html \ n \ n”)这不起作用]在内容描述标题的末尾。其次我把文件保存为.py,但它应该是.cgi,其他一切都很好。我的脚本现在正在执行。感谢