开启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

————————————————
版权声明:本文为CSDN博主「往前的娘娘」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_37355951/article/details/78490131

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值