2010-01-05 5 views
4

필자는 테스트 서버에서 테스트 목적으로 만든 도메인과 통신하기 위해 CFHTTP를 얻으려고합니다. 도메인의 주소는 "mydomain.example.com"입니다. cfhttp를 사용하여 연결하려고 할 때마다 :cfhttp dns resolution

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

나는 이미 Windows hosts 파일에 항목을 추가했습니다.

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

하는

mydomain.example.com/127.0.0.1 
다시 얻을 수 있습니다 :

mydomain.example.com 127.0.0.1 

는 나 또한 java.net.InetAddress의이 ColdFusion 페이지에서 다음을 수행하여 도메인을 확인할 수 있는지 확인했습니다

나는 coldfusion 서비스를 시작 및 중지하고 runtime \ jre \ lib \ security \ java.security의 networkaddress.cache.ttl 값을 0으로 변경하려고 시도했습니다.

나는 모든 것이 jre 레벨에서 해결되지만 cfhttp 레벨에서는 해결되지 않는 이유를 놓치고 있습니다. 어떤 아이디어 ???

+0

cfhttp 주소를 IP로 바꾸면 작동합니까? – dhorn

답변

6

질문을 게시 한 후 왜 그런지 알 수 있습니까? Go 무화과.

문제점은 몇 가지 이유로 인해 런타임 \ bin \ jvm.config의 java.args 행에 이전 프록시 구성 설정이 여전히 남아 있다는 것이 었습니다.

이전 구성 설정을 제거하고 ColdFusion 서비스를 다시 시작한 후에 저는 다시 사업을 시작했습니다. cfhttp 태그는,

-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

0

또한 jvm.config 파일에 호스트 파일을 당신의 java.args 라인에 다음 인수를 추가하여 사용할 수 있도록 알기 원하는 사람들을 위해, 당신은 프록시 정보를 설정할 수 있습니다

창에서 그 변화를 쉽게 받아들이지 않을 것이다. 쉬운 방법은 Windows 컴퓨터를 재부팅하는 것입니다.

나는 동의한다, 문제는 DNS이고, 프록시를 사용하면 문제가 가려진다. Windows에서 DNS 확인 프로그램을 Google DNS 서버 인 8.8.8.8과 같이 안정적이고 공개로 설정해보십시오.