posts - 2, comments - 27, trackbacks - 0, articles - 60
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
          今天折騰一下如何在Tomcat環(huán)境下運(yùn)行python腳本,查閱了一些文檔,把實(shí)現(xiàn)的過程小結(jié)如下,當(dāng)前實(shí)驗(yàn)環(huán)境,Tomcat8,Eclipse。python環(huán)境是Anaconda,因?yàn)橹坝邪惭b這個(gè)東東,也就沒有重新安裝python環(huán)境了。首先在Eclipse中創(chuàng)建新工程,并可以在Tomcat中運(yùn)行起來,接下來才是配置cgi的步驟

          1、在web工程WEB-INF目錄下創(chuàng)建目錄cgi,當(dāng)然也可以是別的名字
          2、修改web.xml,開啟如下設(shè)置,默認(rèn)情況是注釋掉的
          <servlet>
              <servlet-name>cgi</servlet-name>
              <servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
              <init-param>
                  <param-name>clientinputTimeout</param-name>
                  <param-value>100</param-value>
              </init-param>
              <init-param>
                  <param-name>debug</param-name>
                  <param-value>0</param-value>
              </init-param>
              <init-param>
                  <param-name>passShellEnvironment</param-name>
                  <param-value>true</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>D:/Anaconda3/python.exe</param-value>
              </init-param>
              <load-on-startup>5</load-on-startup>
          </servlet>
          注意修改python的路徑
          cgiPathPrefix: 與Server能夠訪問的腳本目錄有關(guān),與之前創(chuàng)建的目錄相對應(yīng)

          3、開啟cgi的mapping映射,修改web.xml,開啟如下設(shè)置
          <servlet-mapping>
              <servlet-name>cgi</servlet-name>
              <url-pattern>/cgi-bin/*</url-pattern>
          </servlet-mapping>
          訪問路徑可以修改為自定義字符
          4、修改content.xml文件,在Context中添加privileged屬性
          <Context privileged="true">

          5、在工程cgi目錄寫python文件,如hello.py
          print('Content-type: text/plain\n\n')

          print('Hello python')
          輸出text/plain說明這是一個(gè)普通文本,一定注意之后要有兩個(gè)換行(小心坑啦)!!!

          6、運(yùn)行工程并測試
          http://localhost:8080/prj/cgi-bin/hello.py

          所見結(jié)果,通過這種方法可以在Tomcat環(huán)境下運(yùn)行python腳本了,如果是已經(jīng)用python腳本做好了服務(wù)的話,還是可以考慮通過服務(wù)調(diào)用的方式與Tomcat工程進(jìn)行整合,在此記錄一下
          主站蜘蛛池模板: 宁安市| 信宜市| 九龙县| 临西县| 贵港市| 麻栗坡县| 吴桥县| 苍山县| 安庆市| 余江县| 定南县| 右玉县| 靖宇县| 汉中市| 霞浦县| 黄骅市| 镇原县| 社会| 西安市| 徐水县| 齐齐哈尔市| 龙里县| 阳山县| 武夷山市| 府谷县| 凤山市| 调兵山市| 阳曲县| 霸州市| 宝清县| 溆浦县| 渭源县| 米林县| 南木林县| 敦化市| 天台县| 海丰县| 兴义市| 商河县| 福清市| 泰兴市|