2011-01-12 32 views
3

我有一臺名爲「named」的服務器,它似乎會導致Grails無法找到本地主機。 (如圖)的/etc/hosts在遠程環境中運行grails的問題

Running Grails application.. 
2011-01-12 20:45:14,046 [main] ERROR ehcache.Cache - Unable to set localhost. This prevents creation of a GUID. Cause was: zaftra: zaftra 
java.net.UnknownHostException: zaftra: zaftra 
    at java.net.InetAddress.getLocalHost(InetAddress.java:1426) 
    at net.sf.ehcache.Cache.<clinit>(Cache.java:143) 
    at net.sf.ehcache.config.ConfigurationHelper.createCache(ConfigurationHelper.java:463) 
    at net.sf.ehcache.config.ConfigurationHelper.createDefaultCache(ConfigurationHelper.java:369) 
    at net.sf.ehcache.CacheManager.configure(CacheManager.java:445) 
    at net.sf.ehcache.CacheManager.init(CacheManager.java:302) 
    at net.sf.ehcache.CacheManager.<init>(CacheManager.java:260) 
    at net.sf.ehcache.hibernate.EhCacheProvider.start(EhCacheProvider.java:128) 

內容:

127.0.0.1  localhost localhost.localdomain zaftra 
::1  localhost localhost.localdomain zaftra 
+0

你能提供你的系統架構和你的`的/ etc/hosts`的內容(或簡短的片斷)? – 2011-01-12 21:38:21

+0

@Rob:完成。系統架構是運行Ubuntu 10.04的雲服務器。 – 2011-01-12 21:53:50

回答

7

我會假設你在Linux上的一番風味。如果是這樣的話,你可能會看看你的/etc/hosts文件 - 是否有localhost的條目?我希望看到這樣的:

127.0.0.1  localhost zaftra 
::1   localhost 

我做了一些谷歌搜索 - 有超級用戶在是一個similar question - 建議有添加以下到/etc/resolv.conf

search (domainname) // in your case, search (zaftra) 

您也可以嘗試:

search zaftra 
// or 
search zaftra.example.com // if there's a more fully-qualified domain name you can use 

(這是基於關閉我在resolv.conf得到了我的Ubuntu機器之一的條目)。

0

我使用AWS(亞馬遜運行Linux)的跑進了完全相同的問題,我的修補程序是它添加到/ etc/hosts文件:

102.130.27.257  LAMP-LIVE01-N123  www.mydomain.com 

其中這些值是從哪裏來的

{internal IP}  {instance name}  {domain for grails app} 

,然後我重新啓動httpd和我的Grails應用服務器(Tomcat)的