2016-04-26 8 views
1

У меня есть приложение ju-приложения bluemix, которое взаимодействует с сервером. У меня есть тестовая и производственная среда. В среде разработки мы связываемся с тестовым сервером, и я получаю ошибку узла js.Bluemix NodeJS ENOTFOUND

Когда я меняю URL-адрес сервера на производственный сервер, все в порядке.

Когда я запускаю приложение на локальном хосте и подключаюсь к тестовому серверу, все в порядке.

Так что моя проблема связана только с средой bluemix с коммуникацией на моем тестовом сервере. Ошибка:

{ 
    "code": "ENOTFOUND", 
    "errno": "ENOTFOUND", 
    "syscall": "getaddrinfo", 
    "hostname": "www.xxxxxxxxx.cz" 
} 

Ошибка имени хоста в маске.

+0

Ваш хозяин за брандмауэром? – fatih

+0

нет, у меня нет проблем с подключением к серверу из моего мобильного приложения (мобильные данные) или с локального хоста, работающего на моей домашней локальной сети. –

+0

Создан ли ваш сервер на bluemix для подключения bluemix? – fscore

ответ

2

Из-за исключения, я думаю, что неудачный код выполняет поиск dns. Я написал этот пример кода и обнаружил, что ошибка похожа или такая же.

var dns = require('dns'); 
dns.lookup('non-existent server', function(e, a) { 
console.log(e); 
}); 

И выход: этапы определения

bash-4.1$ node h.js 
{ [Error: getaddrinfo ENOTFOUND non-existent server] 
    code: 'ENOTFOUND', 
    errno: 'ENOTFOUND', 
    syscall: 'getaddrinfo', 
    hostname: 'non-existent server' } 
bash-4.1$ 

Проблема будет:

  1. пинг ваш целевой сервер с компьютера, который имеет исходящий доступ - чтобы убедиться, что сервер присутствует , Если нет, разрешите эту проблему.
  2. Вход в консоль отладки bluemix
  3. ping ваш целевой сервер. Если он не отвечает, есть стена между bluemix и целью. Если он отвечает, попробуйте этот тестовый пример. Если это тоже сработает, нам придется отлаживать дальше, я могу оказать дополнительную помощь.

Bluemix отладка консоль получается через:

  1. Экспорт переменного окружающей среды "BLUEMIX_APP_MGMT_ENABLE" со значением "оболочкой"
  2. Restage приложения.
  3. Войти в вебе-оболочку в браузере на https://your-app-url/bluemix-debug/shell/ используя учетных данные пользователя Bluemix

Надеется, что это помогает.

+0

Проблема, вероятно, в DNS на Bluemix (знаете ли вы, что использование частного DNS-сервера или какой-либо общественности?) Когда я переключаю свое имя хоста на IP-адрес тестового сервера, все идет правильно. Но это нехорошее решение. Могу ли я вручную установить поставщика DNS в bluemix? Или вы знаете, нужен ли bluemix действительный DNSSEC, потому что у моего тестового сервера нет DNSSEC. Спасибо –

+0

Извините, я не знаю ответа. Bluemix использует платформу CloudFoundry, а cf имеет средства для настройки ваших DNS-адресов, см. Https://docs.cloudfoundry.org/devguide/deploy-apps/routes-domains.html#domains-dns –