java - 用 Java 编写 CGI 脚本

标签 java html cgi

我想知道如何用 Java 编写 CGI 脚本。

我遵循了这个例子 -> http://www.javaworld.com/jw-01-1997/jw-01-cgiscripts.html?page=1

它提供cgi_lib.java、hello.html和hello.java

一切似乎都很好,但在 html 部分。 Action 指向cgi_lib/hello.cgi

没有提供cgi。所以我尝试使用 cgi_lib/hello.java,它在 hello.java 中打印了整个源代码。

然后我尝试将 hello.java 扩展编辑为 hello.cgi,然后再次尝试。 浏览器返回错误 500。

问题是什么? 是不是,有什么具体的方法可以把hello.java编译成hello.cgi? hello.cgi 里的脚本跟hello.java 不一样?

请帮忙。

谢谢。

更新 我添加了 hello.cgi

#!/bin/sh
java     -Dcgi.content_type=$CONTENT_TYPE     -Dcgi.content_length=$CONTENT_LENGTH     -   Dcgi.request_method=$REQUEST_METHOD     -Dcgi.query_string=$QUERY_STRING     -Dcgi.server_name=$SERVER_NAME     -Dcgi.server_port=$SERVER_PORT     -Dcgi.script_name=$SCRIPT_NAME     -Dcgi.path_info=$PATH_INFO   hello

那么 $CONTENT_TYPE、$CONTENT_LENGTH... 是否保持不变?或者我应该输入什么?

只是为了让事情更清楚。 我把cgi_lib、hello.java 和hello.cgi 放在了C:\xampp\cgi-lib

还有C:\xampp\htdocs\test中的hello.html

当我尝试连接时,它返回给我这个

Server error!

The server encountered an internal error and was unable to complete your request.

Error message: 
couldn't create child process: 720002: hello.cgi

If you think this is a server error, please contact the webmaster.

Error 500

localhost
Apache/2.4.3 (Win32) OpenSSL/1.0.1c PHP/5.4.7

我已经检查了c:\xampp\apache\conf 中的httpd.conf 并根据this 配置了

LoadModule cgi_module modules/mod_cgi.so ScriptAlias/cgi-bin/"C:/Program Files/Apache Group/Apache/cgi-bin/" 好像已经启用了。

那么现在的问题是什么?

最佳答案

hello.cgi 的内容显示在文章第 2 页的顶部。

#!/bin/sh
java     -Dcgi.content_type=$CONTENT_TYPE     -Dcgi.content_length=$CONTENT_LENGTH     -Dcgi.request_method=$REQUEST_METHOD     -Dcgi.query_string=$QUERY_STRING     -Dcgi.server_name=$SERVER_NAME     -Dcgi.server_port=$SERVER_PORT     -Dcgi.script_name=$SCRIPT_NAME     -Dcgi.path_info=$PATH_INFO   hello

关于java - 用 Java 编写 CGI 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16223318/

相关文章:

java - 为什么我需要在这里明确地写一个构造函数?

Java 多捕获/重新抛出

javascript - JS - 重定向并返回主页

javascript - 从字符串中获取多个字节的更简单方法?

html - 为响应窗口禁用 Bootstrap dl-horizo​​ntal 类

java - 如何创建可扩展列表?

java - List<String> 的列表到字符串有序的字符串数组

java - CGI 脚本错误 java RMI

perl - 如何使用 Perl 的 CGI.pm 识别协议(protocol)(http 与 https)

python - Python 中的键错误