环境配置一向是一个比较烦的一件工作!本文的目的就是要轻松为你搞定安装和配置SERVLET和jsp的执行环境。 首先,到Java.apac" />
龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

安装配置篇Apache+Tomcat

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
?XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 环境配置一向是一个比较烦的一件工作!本文的目的就是要轻松为你搞定安装和配置SERVLET和jsp的执行环境。 首先,到Java.apac

<?XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 


  环境配置一向是一个比较烦的一件工作!本文的目的就是要轻松为你搞定安装和配置SERVLET和jsp的执行环境。
  
  首先,到Java.apache.org去下载一个tomcat3.1,tomcat3.2。笔者用的是tomcat3.1。下载的是一个ZIP文件。将它extract到一个目录下面。比如c:下面。在c盘下面就会出现一个jakatar-tomcat的目录。你可以将这个目录改个名字。我将目录名改为tomcat。现在打开c: omcatconf目录下的server.xml文件。找到ContextManager这个tag,你将可以看到:
  
  <Connector className="org.apache.tomcat.service.SimpleTcpConnector">
  
  <Parameter name="handler" value="org.apache.tomcat.service.http.
  
  HttpConnectionHandler"/>
  
  <Parameter name="port" value="80"/>
  
  </Connector>
  
  因为tomcat可以作为一个独立的服务器使用,所以有它自己的port号。在这里可以修改它缺省的port号。注重要修改为一个你机器上还没有被占用的port号。我改成9000。
  
  现在到c: omcatin目录下面,你可以看到一个startup.bat的批处理文件。在执行这个文件前,假如你用的是JDK1.2.1或JDK1.2.2的话,请将JDK_HOMELIB ools.jar这个文件放到classpath中去。
  
  (注:设置classpath的方法:右键单击“我的电脑”à 选择属性à 环境,假如还没有classpath这个环境变量,就添加一个,假如有了就在它的基础上修改,加上JDK_HOMELIB ools.jar)
  
  现在可以执行startup.bat这个文件了。(假如在执行时出现out of environment space的提示,就将你的DOS窗口的缓冲区大小开得大些。具体作法:在DOS 窗口的菜单中的属性--> 内存 --> 总共和初始环境改大点)
  
  在执行完后,startup.bat会在另一个窗口开start tomcat的。现在你可以享受一下你的成果了。打开浏览器,在地址栏:http://localhost:9000/
  
  然后回车。你应该看到了一只jakatar-tomcat。现在在地址栏键入:
  
  http://localhost:9000/examples/servlet/,回车。你应该看到一个servlet的index的页面,点击其中的例子servlet看看吧。现在在地址栏键入
  
  http://localhost:9000/examples/jsp/,回车。你应该看到一个类似刚才servlet index页面的一个页面。点击jsp的例子看看吧。假如在点击了一个JSP的例子后出现500的错误,假如没有别的错误信息,在IE5的工具菜单à Internet选项à 高级,把显示友好的HTTP错误的选项去掉,然后IE就会报出具体的出错信息。原因是你没有将tools.jar放到classpath中去。
  
  现在要将tomcat连接到apache上去了。首先到www.apache.org上去下载一个Apache Web Server,我用的是Apache1.3.12。再到java.apache.org上去下载一个Jserv,我用的是Jserv1.1.1。先安装Apache Web Server(比如安装在c:apache目录下面)。安装完后需要修改c:apacheconfhttpd.conf文件,找到Servername,修改为你喜欢的名字,找到port,修改为未被占用的端口。再安装Jserv(比如安装在c:Jserv目录下面)。安装Jserv需要指定JVM所在的目录,你可以指定JDK_HOMEBIN目录。需要指定JSDK所在目录,我指定的是我从java.sun.com上面下载的JSDK安装后的目录。(实际上它要找的是servlet.jar这个文件,你可以指定tomcatlibservlet.jar试一试,我并没有这样试过)
  
  这时候实际上Apache已经支持Servlet了,但还不支持JSP。所以你需要修改c:apacheconfhttpd.conf文件。用文本编辑器打开httpd.conf,在文件最后加上:Include “Tomcat_Homeconf omcat-apache.conf”(请注重,tomcat-apache.conf这个文件是在tomcat运行后由tomcat自动产生的。所以要先开tomcat,再打开Apache)。
  
  现在先启动tomcat(c: omcatinstartup.bat),当出现了另一个窗口后,启动Apache(c:apacheinapache.exe或者通过开始菜单à 程序à Apache Web Serverà Start Apache启动)。假如此时通过后者启动Apache,有一个DOS窗口一闪后就消失了,说明对Apache+JServ+tomcat的配置还有问题,应该通过第一种方法启动Apache,此时你就能在屏幕上看到具体的出错信息。假如出错信息是:apj* : can’t be specified more than once per host。(*号代表一些字符串,比如ApJServLogLevel等等),你就要修改c:Jservconfjserv.conf文件,将apj*的相关行注释掉就可以,可能需要注释5-6行。假如Apache也正常启动的话,现在你可以在地址栏键入http://localhost:apache_port/examples/servlet/ 来通过Apache+tomcat调试Servlet,这里apache_port是Apache的端口号,可以通过修改c:apacheconfhttpd.conf这个文件修改端口号;在地址栏键入http://localhost:apache_port/examples/jsp/ 来调试JSP。
  
  假如读者细心的话,会发现前面测试用的都是examplesjsp目录。现在就告诉你怎么创建你自己的目录。先在c: omcatwebapps目录下面创建testdir目录。在testdir目录下面创建jsp目录和classes目录。现在用文本编辑器打开c: omcatconf目录下面的server.xml。在<ContextManager>的结束tag前面加上:
  <Context path="/testdir" docBase="webapps/testdir" debug="0" reloadable="true" >
  
  </Context>
  
  然后将c: omcatwebapps estdirclasses目录放到classpath这个环境变量中去。用文本编辑器编辑下面这个文件。
  
  <Html>
  
  <body>
  
  <%
  
  int i;
  
  for(i=1;i<6;i++){
  
  out.println("<h" + i + ">Hello World</h" + i + ">");
  
  }
  
  %>
  
  </body>
  
  </html>
  
  存为c: omcatwebapps estdirjsphelloworld.jsp。在地址栏键入:
  
  http://localhost:apache_port/testdir/jsp/helloworld.jsp 看看结果吧。
  
  再测试一下Servlet。用文本编辑器编辑下面这个文件。
  
  import java.io.*;
  
  import java.text.*;
  
  import java.util.*;
  
  import javax.servlet.*;
  
  import javax.servlet.http.*;
  
  public class HelloWorld extends HttpServlet {
  
  public void service(HttpServletRequest request,
  
  HttpServletResponse response)
  
  throws IOException, ServletException
  
  {
  
  response.setContentType("text/html");
  
  ServletOutputStream out = response.getOutputStream();
  
  out.println("<html>");
  
  out.println("<head>");
  
  String title = “Hello World”;
  
  out.println("<title>" + title + "</title>");
  
  out.println("</head>");
  
  out.println("<body bgcolor="white">");
  
  out.println("<body>");
  
  out.println("<h1>" + title + "</h1>");
  
  out.println("</body>");
  
  out.println("</html>");
  
  }
  
  }
  
  存为c: omcatwebapps estdirclassesHelloWorld.java,用javac编译后,在地址栏键入http://localhost:apache_port/testdir/servlet/HelloWorld 看看结果吧。


  
精彩图集

赞助商链接