Hallo,
ich verwende Tomcat 4.1 und möchte CGI-Skripte in HTML-Seiten einbinden. Dafür habe ich testweise eine Datei "hallo.cgi" mit dem folgenden Inhalt erstellt:
<PRE>
echo "Content-Type: text/plain"
echo
echo "Hallo"
</PRE>
Außerdem habe ich - wie in der Doku beschrieben - das Jar-File servlets-cgi.renametojar nach servlets-cgi.jar umbenannt und in der web.xml an den folgenden Stellen die Auskommentiereung herausgenimmen:
<PRE>
<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>6</param-value>
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>examples/WEB-INF/cgi</param-value>
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>
...
...
...
<!-- The mapping for the CGI Gateway servlet -->
<servlet-mapping>
<servlet-name>cgi</servlet-name>
<url-pattern>/cgi-bin/*</url-pattern>
</servlet-mapping>
</PRE>
Bei dem Versuch das Skript "hallo.cgi" direkt durch Eingabe der URL im Browser (bei mir ist das http://localhost:8080/examples/cgi-bin/hallo.cgi) bekomme ich vom CGIServlet eine Fehler - Seite, die mir die Meldung: "CGI Script not found or not specified." sowie eine Reihe von Umgebungsvariablen ausgibt. Eine Umgebungsvarible lautet "pathTranslated". Diese Variable gibt mir den Pfad aus in der auch tatsäclich mein Testskript "hallo.cgi" steht. Ich gehe daher davon das die CGI - Datei im richtigen Verzeichniss steht.
Ich habe mich bisher noch nicht mit CGI - Programmierung beschäftigt und auch noch nicht viel an der Tomcat-Konfiguration herumgeschraubt.
Hat jemand eine Idde wie ich das CGI-Skript zum Laufen bekommen kann?
Gruß Olaf Böhm
ich verwende Tomcat 4.1 und möchte CGI-Skripte in HTML-Seiten einbinden. Dafür habe ich testweise eine Datei "hallo.cgi" mit dem folgenden Inhalt erstellt:
<PRE>
echo "Content-Type: text/plain"
echo
echo "Hallo"
</PRE>
Außerdem habe ich - wie in der Doku beschrieben - das Jar-File servlets-cgi.renametojar nach servlets-cgi.jar umbenannt und in der web.xml an den folgenden Stellen die Auskommentiereung herausgenimmen:
<PRE>
<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>6</param-value>
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>examples/WEB-INF/cgi</param-value>
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>
...
...
...
<!-- The mapping for the CGI Gateway servlet -->
<servlet-mapping>
<servlet-name>cgi</servlet-name>
<url-pattern>/cgi-bin/*</url-pattern>
</servlet-mapping>
</PRE>
Bei dem Versuch das Skript "hallo.cgi" direkt durch Eingabe der URL im Browser (bei mir ist das http://localhost:8080/examples/cgi-bin/hallo.cgi) bekomme ich vom CGIServlet eine Fehler - Seite, die mir die Meldung: "CGI Script not found or not specified." sowie eine Reihe von Umgebungsvariablen ausgibt. Eine Umgebungsvarible lautet "pathTranslated". Diese Variable gibt mir den Pfad aus in der auch tatsäclich mein Testskript "hallo.cgi" steht. Ich gehe daher davon das die CGI - Datei im richtigen Verzeichniss steht.
Ich habe mich bisher noch nicht mit CGI - Programmierung beschäftigt und auch noch nicht viel an der Tomcat-Konfiguration herumgeschraubt.
Hat jemand eine Idde wie ich das CGI-Skript zum Laufen bekommen kann?
Gruß Olaf Böhm
Comment