我在“云”服务器中运行名为 S1 的 Linux 服务器,当 tomcat 6.0.24 启动时,出现异常:
org.apache.catalina.connector.Connector pause
SEVERE: Protocol handler pause failed
java.net.UnknownHostException: S1: S1
at java.net.InetAddress.getLocalHost(InetAddress.java:1353)
at org.apache.jk.common.ChannelSocket.unLockSocket(ChannelSocket.java:485)
然后导致:
ERROR ehcache.Cache - Unable to set localhost. This prevents creation of a GUID. Cause was: Sjira1: S1
java.net.UnknownHostException: S1: S1
at java.net.InetAddress.getLocalHost(InetAddress.java:1353)
at net.sf.ehcache.Cache.<clinit>(Cache.java:143)
我的主机文件是:
127.0.0.1 localhost localhost.localdomain
(valid-ip-address) S1 S1.(valid domain name)
- ping S1 和 S1。(有效域名)返回有效 IP 地址
- nslookup S1.(valid domain name) 返回有效的 ip 地址
- nslookup S1 抛出 ** 服务器找不到 S1:NXDOMAIN
关于如何解决这个问题的任何想法?
谢谢
已解决...将“搜索(域名)”添加到 resolv.conf
我遇到了完全相同的错误并尝试了您的建议。Tomcat 将启动而没有任何错误,但我的 webapp 会挂起。我得到的修复,这真的很奇怪,是先 cd 到 ${tomcat_home}/bin,然后执行 startup.sh。当我恢复到原始主机和 resolv.conf 文件并应用此修复程序时,它工作正常。诡异的。
很可能 S1 不会仅使用名称服务器解析为 IP。