Apache-tomcat-6.0.36配置基於Python的CGI腳本解析

(一)系統環境

* Apache-tomcat-6.0.36 python

*  Python2.7 git

* JDK6 web

(二)配置Apache-tomcat-6.0.36

1.      打開web.xml文件(D:\apache-tomcat-6.0.36\conf\web.xml),找到這一段被註釋的節點(以下),若是你從沒本身修改過,那應該是被註釋的,你還須要添加一些參數。 apache

 SHAPE  \* MERGEFORMAT 瀏覽器

<servlet> tomcat

        <servlet-name>cgi</servlet-name> session

        <servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class> app

        <init-param> webapp

          <param-name>clientinputTimeout</param-name> ide

          <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-bin</param-value>

        </init-param>

                   <init-param>

          <param-name>executable</param-name>

          <param-value>D:/Python27/python.exe</param-value>

        </init-param>

         <load-on-startup>5</load-on-startup>

    </servlet>

解釋幾個重要的參數:

「passShellEnvironment」: Python解析器解析CGI腳本有關,可是必定要配置好Python的環境變量;

「cgiPathPrefix」: Server可以訪問的腳本目錄有關,與第二步內容相對應;

「executable」: (這是個人安裝路徑)與Python解析器有關,沒有解析器,Server怎麼解析呢~

2.      找到第二段被註釋的節點:

 SHAPE  \* MERGEFORMAT

<servlet-mapping>

        <servlet-name>cgi</servlet-name>

        <url-pattern>/cgi-bin/*</url-pattern>

</servlet-mapping>

這裏的<url-pattern>/cgi-bin/*</url-pattern>指定了瀏覽器訪問的地址,與前面<param-value>WEB-INF/cgi-bin</param-value>相對應。

3.      配置權限:

打開context.xml(D:\apache-tomcat-6.0.36\conf),添加:privileged="true"

<Context privileged="true">

    <!-- Default set of monitored resources -->

    <WatchedResource>WEB-INF/web.xml</WatchedResource>

        

    <!-- Uncomment this to disable session persistence across Tomcat restarts -->

    <!--

    <Manager pathname="" />

    -->

    <!-- Uncomment this to enable Comet connection tacking (provides events

         on session expiration as well as webapp lifecycle) -->

    <!--

    <Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />

    -->

</Context>

關於Apache的配置暫時結束,後面還有~

(三)編寫CGI腳本程序

這是一個在Windows下運行的很是簡單的CGI腳本:

 SHAPE  \* MERGEFORMAT

#!D:\Python27\python.exe

print 'Content-type: text/plain'

print #打印空行,以結束首部

print 'Hello, CGI'

文件名:cgitest.cgi

「#!D:\Python27\python.exe」是被指定必須存在的Pound Bang行;

「print 'Content-type: text/plain' 」: 這代表頁面是普通的文本,如何頁面爲HTML,這一行就應該這麼寫;

配置本身的website

在這裏,不使用任何第三方IDE,你也能夠建立本身的website

一、  D盤根目錄下新建文件夾:」pannyweb」

二、  拷貝」WEB-INFO」文件(D:\apache-tomcat-6.0.36\webapps\ROOT)」pannyweb」文件夾中;

三、  修改」server.xml」文件(D:\apache-tomcat-6.0.36\conf),在」<Host></Host>」節點內最後添加:」<Context path=」/panny」 docBase=」D:\pannyweb」 />」,修改文件」web.xml」中的節點」<servlet></servlet>」」<init-param></init-param>」」<param-name>listings<param-name>」的值為」true」.

四、  現在能夠通過外網的IP地址訪問了。如:」http://10.41.80.194:8080/panny/」

五、  D:\pannyweb\WEB-INF目錄下建立文件夾命名爲:」cgi-bin」,把前面建立好的cgitest.cgi拷貝進去。此時一切準備就緒了。

(四)運行腳本

在瀏覽器裏輸入:http://127.0.0.1:8080/panny/cgi-bin/cgitest.cgi

You got it? Good job~

相關文章
相關標籤/搜索