我的tomcat是5.0.28安装版的,我把它安装在我xp profesinol sp2的操作系统上后,申请了域名后,一切都配置好了,它做为windows服务,随操作系统自动启动运行,通过我本机可一正常的访问,但外网却访问不了,
但是运行安装目录bin目录下的startup.bat时却可以正常的访问了,我调试了好久,只有在dos窗口的情况下,它才可以正常的访问,不知是什么原因,会不会是Tomcat的一个bug?
请熟悉Tomcat的程序员回答,谢谢

解决方案 »

  1.   

    不要整天张嘴闭嘴的bug。你看看你的server.xml,贴上来看看。再给我看看你的环境配置。你到底是安装的还是解压缩的?
    另外,请给分。
      

  2.   

    我为这个问题语句调试了好几天了
    是安装版的
    环境都没问题
    下面是server.xml:
    <?xml version='1.0' encoding='utf-8'?>
    <Server>
      <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
      <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
      <GlobalNamingResources>
        <Environment name="simpleValue" type="java.lang.Integer" value="30"/>
        <Resource auth="Container" description="User database that can be updated and saved" name="UserDatabase" type="org.apache.catalina.UserDatabase"/>
        <ResourceParams name="UserDatabase">
          <parameter>
            <name>factory</name>
            <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
          </parameter>
          <parameter>
            <name>pathname</name>
            <value>conf/tomcat-users.xml</value>
          </parameter>
        </ResourceParams>
      </GlobalNamingResources>
      <Service name="Catalina">
        <Connector acceptCount="128" connectionTimeout="20000" disableUploadTimeout="true" port="80" redirectPort="8443" backlog="128" maxSpareThreads="75" maxThreads="150" minSpareThreads="25">
        </Connector>
        <Connector port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443">
        </Connector>
        <Engine defaultHost="hljc.vicp.net" name="Catalina">
                <Host appBase="webapps" name="localhost">
            <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/>
          </Host>
                <Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/>
          <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
        </Engine>
      </Service>
    </Server>
      

  3.   

    80端口是打开的
    如果是防火墙的事情,那为什么在dos运行是可以正常访问呢
      

  4.   

    恕我直言,服务安装版是没有startup.bat 的。我认为你的机器上安装了2套tomcatOK, 我们按照下面的方法测试
    1 启动你的Tomcat服务
    2 按照你的说法,本机可以访问,我们到cmd命令行,输入 telnet 127.0.0.1 80 ,如果出现黑屏,则连接成功
    3 ipconfig 看看的局域网地址,或者外网地址
    4 在其它机器运行 telnet XX.X.X.X 80 如果不能连接,完全可以确认你的80端口没有对外开放,你还是再次确认防火墙,杀毒软件之类的吧5 如果不行,把端口改成8888,重新测试吧!
      

  5.   

    在你的网关路由器中把虚拟服务器的服务端口映射到你运行tomcat主机的IP上,就能在外网通过该特定端口进行访问了。
      

  6.   

    这个问题看你的配置是不是有问题
     你把start.bat放入你的启动菜单里试试吧
      

  7.   

    环境都没问题的话
    看看防火墙和路由器吧
    有一个DMZ主机的设置 要把ip指向正确了
      

  8.   

    5楼的哥们
    我就只安装了一套Tomcat,
    你说tomcat没有startup.bat,
    我觉的奇怪,怎么会没有呢
      

  9.   

    你tmd是不是很拽,又没有问你,你叨叨啥
      

  10.   

    楼主你是一个ssb 你有问题大家给你解决 你解决了 又不管大家了  NMLGB   没教养