我乡亲:
我知道 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
这是我在批处理文件中编写的命令的提示。
有人能帮我吗?
提前致谢。