我乡亲:
我知道 CGI 是侏罗纪,在你们所有人称我为疯子之前,我必须说这个问题仅用于教育目的(在实际情况下我使用 JSP)。
我正在尝试用 Java 编写“Hello World”CGI,但没有成功。
所以我在 C# 中尝试同样的工作。两个程序(C# 和 Java)是完全一样的(逐行)。C# 有效,而 Java 无效。
这是 C# 中的代码:
命名空间 CGI_CSharp
{
课堂节目
{
静态无效主要(字符串 [] 参数)
{
Console.WriteLine("Content-Type: text/html\n"); // 需要额外的 "\n"
Console.WriteLine("<html>");
Console.WriteLine("<head>");
Console.WriteLine("<title>CGI - C#</title>");
Console.WriteLine("</head>");
Console.WriteLine("<body>");
Console.WriteLine("<h1>Hello World !</h1>");
Console.WriteLine("</body>");
Console.WriteLine("<html>");
}
}
}
我在浏览器 URL 中写道:http://localhost/CGI_CSharp.exe和 BINGO!C# 代码有效!
现在Java中的相同代码:
公共类 CGI_Java
{
公共静态无效主要(字符串 [] 参数)
{
System.out.println("Content-Type: text/html\n");
System.out.println("<html>");
System.out.println("<head>");
System.out.println("<title>CGI - Java</title>");
System.out.println("</head>");
System.out.println("<body>");
System.out.println("<h1>Hello World !</h1>");
System.out.println("</body>");
System.out.println("</html>");
}
}
现在我尝试了网址:
http://localhost/java.exe%20CGI_Java
(如您所知, %20 是空格 => (http://localhost/java.exe CGI_Java)
我得到:
HTTP 404.0 - 未找到
所以,我再次尝试,现在使用带有一行文本的批处理文件 (CGI_Java.bat):
java.exe CGI_Java(CGI_Java.bat的内容)
现在,我试试这个 URL:
http://localhost&/CGI_Java.bat
现在浏览器显示:
C:\inetpub\wwwroot>java.exe CGI_Java
这是我在批处理文件中编写的命令的提示。
有人能帮我吗?
提前致谢。