有TOMCAT就不需要IIS吧。
很简单的,随便搜索一下就一大把。

解决方案 »

  1.   

    Tomcat 4.0+apache 1.3完美整合1.Tomcat缺省的jsp文件必须放置在examples目录下,难道jsp文件只能放在examples下吗?
    2. 访问jsp只能用xxxx.com:8080访问吗? 本文讨论如何结合Tomcat和Apache及其他脚本程序如PHP混合使用情况,如果一台服务器只运行jsp,那解决办法很简单:只要将server.xml中8080端口改成80就可以,或将apache中的httpd.conf的80改成8080也可以.可以参考: Using Apache Tomcat 4 Tomcat 3.23中很好做,相关文章介绍不少,Tomcat 4.0就不一样了,本人经过试验,摸索出解决这两个问题的简单方式,这种方式可以和apache结合在一起,假设域名主机是sign.jdon.com 可以实现http://sign.jdon.com/访问所有JSP文件,这一结果是很多朋友希望达到的,我下面介绍一下.分两步: 配置server.xml 和 配置httpd.conf: 配置server.xml
    首先介绍一下tomcat conf下的server.xml 我们的动作主要是在这里面操作:
    server.xml有两部分组成:
    1. service=Tomcat-Standalone 这是Tomcat标准启动服务,使用端口8080访问
    2. service=Tomcat-Apache 这是和apache整合部分,使用80008端口访问 ,同时需要在httpd.conf中加载mod_webapp.so
    在上面两个service段中加入(在哪个service加入取决于你需要是以sign.jdon.com:8080 还是以sign.jdon.com/访问):
    我们是想以后者访问,就在service=Tomcat-Apache中加入:<Host name="虚拟主机域名" debug="0" appBase="应用基本目录" unpackWARs="true">
    <Context path="容器URL路径" docBase="容器目录" debug="0" reloadable="true">
    <Logger className="org.apache.catalina.logger.FileLogger"
    prefix="自己的log文件名." suffix=".txt"
    timestamp="true"/>
    </Context> </Host>  1. reloadable="true"确保你每次上传bean或servlet到WEB-INF/classes时,系统自动装载最新的.2. docBase="" 是你自己jsp目录的实际位置 ,如果是winNT, 可以是c:/jserv3. Logger 是用来将/jserv的启动状态单独输出一个log文件中 这里是localhost_jserv_log,这个文件在Tomcat 的logs目录下。可以用来监视你的/jserv启动了没有。4.欠缺servlet或bean是放置在自己目录下的WEB-INF/classes中,建议你将eamples目录下的WEB-INF原封不动的拷贝过来,省事。你要修改这个,就修改web.xml 这些 上面推荐的英文文章中有介绍.我的server.xml是这样:
    <Service name="Tomcat-Apache"><Connector className="org.apache.catalina.connector.warp.WarpConnector"
    port="8008" minProcessors="5" maxProcessors="75"
    enableLookups="true"
    acceptCount="10" debug="0"/><!-- Replace "localhost" with what your Apache "ServerName" is set to -->
    <Engine className="org.apache.catalina.connector.warp.WarpEngine"
    name="Apache" debug="0" appBase="webapps"><!-- Global logger unless overridden at lower levels -->
    <Logger className="org.apache.catalina.logger.FileLogger" prefix="apache_log." suffix=".txt" timestamp="true"/><!-- Because this Realm is here, an instance will be shared globally -->
    <Realm className="org.apache.catalina.realm.MemoryRealm" /><!--下面是我加入的-->
    <Host name="sign.jdon.com" debug="0" appBase="/home/bqlr" unpackWARs="true">
    <Context path="/" docBase="/home/bqlr/sign" debug="0" reloadable="true">
    <Logger className="org.apache.catalina.logger.FileLogger"
    prefix="jdon.com_log." suffix=".txt"
    timestamp="true"/>
    </Context>
    </Host>
    </Engine></Service>
     
     配置httpd.conf设定sign.jdon.com 对应我的目录/home/bqlr/sign/ sign.jdon.com是虚拟主机名,我的部署方法可以为特定虚拟主机域名提供JSP功能:
    在自己的apache 的conf下的httpd.conf加入:LoadModule webapp_module libexec/mod_webapp.so
    AddModule mod_webapp.c
    WebAppConnection conn warp sign.jdon.com:8008 
    <VirtualHost 61.119.57.108>
    ServerAdmin [email protected]
    DocumentRoot /home/bqlr/sign
    ServerName sign.jdon.com
    # WebAppDeploy examples conn /examples/
    WebAppDeploy sign conn /
    </VirtualHost>  1.本方法是适合apache 1.3版本的 适合glibc2.1 我在RedHat 7.2 7.1 7.0 6.2 6.1都测试通过2.如果你的linux安装的是glibc2.1 就要自己下载mod_webapp.src自己编译,编译前,要先安装其目录下的APR.
    这里是我编译好正在使用的 mod_webapp.so ,可以下载直接copy到apache的libexec目录下3.使用httpd configtest 测试httpd.conf可否启动,如果出现无效LoadModule提示 是因为你的apache没有使用module=so编译,重新编译apache 网络上其他有介绍.4.在/home/bqlr/sign下安装WEB-INF/classes目录 最简单的办法是copy -R tomcat/wepapps/examples/WEB-INF 到/home/bqlr/sign下,以后自己编译的bean或servlet放在这个目录下 以后我有空 我公布我的jsp/bean的编程举例.最后 重新启动Tomcat 和 apache 你可以使用sign.jdon.com访问所有的Jsp 和servlet了.