开启Tomcat的cgi解析python脚本

概述:

CGI(Common Gateway Interface): 通用网关接口,简单理解通过不同脚本转成html页面的过程。说的形象,将各种肉变成香肠的加工机器。而它目的转成html页面

1、先决条件:

必须要安装Java,Python,Tomcat软件,对于Java、Tomcat需要配置环境变量。

笔者JDK1.8、 Python3.6.3、Tomcat7.0

关键是设置Tomcat步骤:

2、下载Tomcat(Tomcat 7.0)

http://tomcat.apache.org/download-70.cgi

3、修改配置文件web.xml  在 <TOMCAT_HOME>\conf\目录下

例如: C:\Program Files\Apache Software Foundation\Tomcat 7.0\conf

取消注释 添加 debug参数,调试用的, 这类类似平时url路径拦截进行处理的配置

<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>
 <load-on-startup>5</load-on-startup>
</servlet>
<servlet-mapping>     
 <servlet-name>cgi</servlet-name>
 <url-pattern>/cgi-bin/*</url-pattern>
</servlet-mapping>

4、添加servlet参数passShellEnvironment 然后设置为True(运行环境检查通过才行,可选的)

<init-param>
          <param-name>passShellEnvironment</param-name>
          <param-value>true</param-value>
</init-param> 

5、添加servlet参数“executable”  注意修改param-value标签的值为自己安装python目录的python.exe路径

<init-param>
          <param-name>executable</param-name>
          <param-value>C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\python.exe</param-value>
        </init-param>

6、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>C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\python.exe</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>

7、修改<TOMCAT_HOME>\conf\context.xml 增加属性privileged=“true” 到<Context> 不然会报权限不足

 <Context privileged="true">

</Context>

8、创建一个<TOMCAT_HOME>\webapps 目录下创建一个test文件夹

9、在继续创建文件夹WEB-INF, 在WEB-INF创建cgi文件夹   形成如下路径<TOMCAT_HOME>\webapps\test\WEB-INF\cgi\

10、在<TOMCAT_HOME>\webapps\test\WEB-INF\cgi\    目录下创建hello.py文件

内容为:

print ("Content-type: text/html\n\n")
print ("Hello, world!\n")
注意在python 3.X 之后需要加括号

11、启动tomcat、打开浏览器输入http://localhost:8080/test/cgi-bin/hello.py 


参考文档:http://lekshmideepu.blogspot.com/2013/03/configure-tomcat-7-to-run-python-cgi.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值