Tomcat配置帮助:多个端口无响应
我的目标是让端口80和81从两个不同的路径监听并提供内容。我正在复制与IIS一起使用的内容,并在特定端口上创建网站。
我获取了基本配置文件,并在Server标记(server.xml)内添加了以下几行:
<Service name="stable"> <Connector port="80" protocol="HTTP/1.1" />
<Context docBase="C:\websites\test\stable\" />
</Service>
<Service name="release">
<Connector port="81" protocol="HTTP/1.1" />
<Context docBase="C:\websites\test\release\" />
</Service>
我的提示是,我必须为要运行的每个端口(在主服务器标签内)安装带有连接器和上下文标签的Service标签。
我查看了日志,发现以下内容:
16-Jan-2011 8:54:44 AM org.apache.catalina.connector.CoyoteAdapter serviceSEVERE: An exception or error occurred in the container during the request processing
java.lang.NullPointerException
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:861)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1584)
at java.lang.Thread.run(Thread.java:619)
我知道在一个更本地化的context.xml文件中Context可以更好地工作,但是我不介意重新启动,直到我开始工作。或者也许需要它(不是按APress
Pro Apache TomCat6)。
此时,转到IP:80不会显示任何内容,没有文件,没有错误,只是空白页。即使当我尝试访问index.html(已在适当的docBase中复制)时,我也得到了黑屏,没有任何错误。
我以为我会把文件寄出去,以防有人有更多时间花在他们身上。
这是我的server.xml文件:http :
//pastebin.com/DAunTPTg
这是我目前遇到的错误:http :
//pastebin.com/mrrd0116
为简化起见,我尝试使端口80正确响应。
根据我的书:
使用DNS配置的此虚拟主机的名称。嵌套在引擎中的主机之一必须具有与该引擎的defaultHost属性匹配的名称。
为什么我要显示除localhost外的任何内容(localhost1无法正常工作?)
这是我现在所处的位置,仍然无法正常工作:
<Service name="Stable"> <Connector
port="80"
protocol="HTTP/1.1"
connectionTimeout="20000" />
<Engine name="Stable" defaultHost="localhost">
<Host
name="localhost"
appBase="webapps">
<Context docBase="C:\websites\test\stable" />
</Host>
</Engine>
</Service>
我也遇到了一个新的错误:
18-Jan-2011 8:37:12 PM org.apache.catalina.startup.Catalina
start严重:Catalina.start:LifecycleException:错误初始化:org.apache.catalina.core.StandardContext.start()上的java.lang.NullPointerException
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)的org.apache.catalina.core.StandardHost.start(StandardHost.java:785)的org.apache.catalina的StandardContext.java:4380)
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)的.core.ContainerBase.start(ContainerBase.java:1045)org.apache.catalina.core.StandardService.start(StandardService.java:519处的.core.ContainerBase.start(ContainerBase.java:1045)
),位于org.apache.catalina.startup.Catalina.start(Catalina.java:581)的org.apache.catalina.core.StandardServer.start(StandardServer.java:710),位于sun.reflect.NativeMethodAccessorImpl。在java.lang.reflect.Method.invoke(Method.java::sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)处invoke0(NativeMethod)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)处597),位于org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289),位于org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
和
2011年1月18日8:36:47 org.apache.catalina.mbeans.ServerLifecycleListener
createMBeans严重:createMBeans:org.apache.catalina.mbeans.MBeanUtils.createObjectName(MBeanUtils.java:1086)上的Throwable
java.lang.NullPointerException在org.apache.catalina.mbeans.MBeans.MBeanUtils.createMBean(MBeanUtils.java:504)在org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:570)在org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans
(ServerLifecycleListener.java:366)在org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:535)在org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:498)在org.apache。
catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:656)在org.apache.catalina.mbeans.ServerLifecycleListener.java:628)在org.apache.catalina.mbeans.ServerLifecycleListener.java:628)在org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:278)在org.apache.catalina.mbeans.ServerLifecycleListener
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)(位于org.apache.catalina.core.StandardServer.start(StandardServer.java:703)处的.lifecycleEvent(ServerLifecycleListener.java:129)。
apache.catalina.startup.Catalina.start(Catalina.java:581)位于sun.reflect.NativeMethodAccessorImpl.invoke0(本地方法)位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)位于sun.reflect.DelegatingMethodAccessorImpl。在java.lang.reflect处调用(DelegatingMethodAccessorImpl.java:25)。org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)的Method.invoke(Method.java:597)org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)的Method.invoke(Method.java:597)
我在conf文件夹下添加了文件夹结构/ Stable / localhost。还添加了host-manager.xml和manager.xml。
仍然不起作用。
我想我明白了,我正在为html和cfml页面提供日志文件中的一些错误。
<Service name="Stable"> <Connector
port="80"
protocol="HTTP/1.1"
connectionTimeout="20000" />
<Engine name="Stable" defaultHost="localhost">
<Host
name="localhost"
appBase="C:\websites\test\stable\">
<Context docBase="C:\websites\test\stable\" path="" />
</Host>
</Engine>
</Service>
错误:
18-Jan-2011 11:31:40 PM org.apache.catalina.core.StandardContext
resourcesStart SEVERE:错误启动静态资源java.lang.IllegalArgumentException:文档库C:\
websites \ test \ stable \ manager不存在或存在可读目录»
回答:
这为我工作:
<Service name="Stable"> <Connector
port="80"
protocol="HTTP/1.1"
connectionTimeout="20000" />
<Engine name="Stable" defaultHost="localhost">
<Host
name="localhost"
appBase="C:\websites\test\stable\">
<Context docBase="C:\websites\test\stable\" path="" />
</Host>
</Engine>
以上是 Tomcat配置帮助:多个端口无响应 的全部内容, 来源链接: utcz.com/qa/402817.html