2010-01-05 107 views
4

我试图让CFHTTP与我为测试目的在我的测试服务器上创建的域进行通信。该域的地址是“mydomain.example.com”。每次我尝试连接使用cfhttp我得到一个错误说明:cfhttp dns解析

Your requested host "mydomain.example.com" could not be resolved by DNS. 

我已经添加在Windows主机文件中的条目。

mydomain.example.com 127.0.0.1 

我也确信,java.net.InetAddress中可以通过做一个ColdFusion页下面的解析域:

<cfset loc.javaInet = createObject("java","java.net.InetAddress")> 
<cfset loc.dnsLookup = loc.javaInet.getByName("mydomain.example.com")> 

的是找回

mydomain.example.com/127.0.0.1 

我甚至试过启动和停止ColdFusion服务,并在运行时更改networkaddress.cache.ttl的价值\ JRE \ lib \ security中\ java.security为0

我在为什么一切都似乎在jre级别解决,但不在cfhttp级别的迷失。有任何想法吗???

+0

如果您用IP替换cfhttp地址,它会工作吗? – dhorn 2010-01-05 16:33:40

回答

6

为什么我发布问题后,我看着办吧?去图。

的问题是,由于某种原因,我仍然对我的java.args线上的老代理配置安装在我运行\ BIN \ jvm.config。

删除旧的配置设置并重新启动ColdFusion服务后,我又回到企业。

对于那些想知道,您可以设置代理信息CFHTTP通过添加下面的参数到您java.args线在jvm.config文件

-Dhttp.proxyHost=<ip address> 
-Dhttp.proxyPort=<portnumber> 
-Dhttp.proxyUser=<username> 
-Dhttp.proxyPassword=<password> 
0

你的问题可能与DNS查询由ColdFusion的缓存的方式做。 CFHTTP永久保存DNS查找的副本。你可以尝试通过重新启动Coldfusion来清除它。

+0

已经这样做了:我甚至尝试启动和停止coldfusion服务,并将runtime \ jre \ lib \ security \ java.security中的networkaddress.cache.ttl的值更改为0。 – rip747 2010-01-05 18:28:58

0

而且,您的主机文件使用不会轻易在windows中找到这些更改。简单的方法是重新启动Windows机器。

我同意,这个问题是一个DNS,并且使用代理只是掩盖了问题。尝试在Windows上将您的DNS解析器设置为稳定且公开的内容,例如8.8.8.8这是一个Google DNS服务器。