2010-01-05 12 views
4

J'essaie d'obtenir CFHTTP pour parler à un domaine que j'ai créé à des fins de test sur mon serveur de test. l'adresse du domaine est "mydomain.example.com". chaque fois que je tente de me connecter à l'aide cfhttp i obtenir une erreur indiquant:cfhttp dns résolution

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

je l'ai déjà ajouté l'entrée dans le fichier hosts de Windows.

mydomain.example.com 127.0.0.1 

J'ai aussi fait en sorte que java.net.InetAddress peut résoudre le domaine en procédant comme suit dans une page coldfusion:

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

pour ce qui est de revenir

mydomain.example.com/127.0.0.1 

J'ai même essayé de démarrer et d'arrêter le service coldfusion et de changer la valeur de networkaddress.cache.ttl dans le runtime \ jre \ lib \ security \ java.security à 0.

Je ne comprends pas pourquoi tout semble se résoudre au niveau jre mais pas au niveau cfhttp. des idées???

+0

Cela fonctionne-t-il si vous remplacez l'adresse cfhttp par l'adresse IP? – dhorn

Répondre

6

Pourquoi est-ce qu'après avoir posté une question, je l'ai compris? Allez fig. Le problème était que pour une raison ou une autre, j'avais toujours une ancienne configuration de proxy sur ma ligne java.args dans mon runtime \ bin \ jvm.config.

Après avoir supprimé l'ancien paramètre de configuration et redémarré le service ColdFusion, je suis de retour.

Pour ceux qui veulent savoir, vous pouvez définir les informations de proxy pour cfhttp à utiliser en ajoutant les arguments suivants à votre java.args ligne dans le fichier jvm.config

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

Votre problème peut être lié à la façon dont les recherches DNS sont mises en cache par Coldfusion. CFHTTP conserve en permanence une copie de la recherche DNS. Vous pourriez essayer de vider ceci en redémarrant Coldfusion.

+0

l'a déjà fait: j'ai même essayé de démarrer et d'arrêter le service coldfusion et de changer la valeur de networkaddress.cache.ttl dans le runtime \ jre \ lib \ security \ java.security à 0. – rip747

0

En outre, votre fichier hosts ne prendra pas ces changements dans les fenêtres facilement. La manière la plus simple est de redémarrer la machine Windows. Je suis d'accord, le problème est celui du DNS, et l'utilisation d'un proxy ne fait que masquer le problème. Essayez de définir votre résolveur DNS sur Windows à quelque chose de stable et public, comme 8.8.8.8 qui est un serveur DNS Google.