Вопрос

Я продолжаю получать ошибку 503, но в журнале нет ошибок при попытке разместить приложение keystone.js на openshift. Кто-нибудь успешно разместил у них приложение keystone?На локальном хосте все работает нормально.

Я использую новую установку keystone.js без блога или облачной среды.

Это было полезно?

Решение

Вы предоставили очень мало информации для однозначного ответа.Какие варианты вы передаете keystone.init()?Ты используешь dotenv?Если да, то что ты там устанавливаешь?Устанавливали ли вы какие-либо переменные среды, используя rhc set-env?

Я спрашиваю, потому что распространенной (хотя и не единственной) причиной ошибок 503 в приложениях Node.js на OpenShift является номер порта, переопределяющий номер порта OpenShift.Кистоун смотрит на process.env.PORT прежде чем он посмотрит process.env.OPENSHIFT_INTERNAL_PORT.Итак, если у вас есть PORT установить на свой .env или с rhc set-env оно будет иметь приоритет над OPENSHIFT_INTERNAL_PORT.

Я наткнулся на аналогичный вопрос на Группа Google KeystoneJS.В другом случае разработчик добавил картридж MONGODB в свое приложение, но не установил строку подключения для картриджа в Keystone.

Если это и ваш случай, вам необходимо установить Keystone mongo вариант в Keystone.init() или используя Keystone.set('mongo', 'connection_sring').Когда вы создали картридж, вы получили URL-адрес и некоторые учетные данные.OpenShit передает их вашему приложению в переменных среды.Вы можете построить строку подключения mongo следующим образом:

var connectionString = process.env.OPENSHIFT_MONGODB_DB_USERNAME + ":" +  process.env.OPENSHIFT_MONGODB_DB_PASSWORD + "@" + process.env.OPENSHIFT_MONGODB_DB_HOST + '/' + process.env.OPENSHIFT_APP_NAME;

keystone.set('mongo', connectionString);

or 

keystone.init({
  ...
  mongo: connectionString,
  ...
});

Или вы можете использовать rhc set-env установить MONGO переменная среды следующим образом:

rhc set-env MONGO=http://{username}:{password}@{connection url}/{dbname} -a your_app_name

А connection url выше тот, который вы получили от OpenShift при создании картриджа.Если он выглядит как стандартный URL-адрес MONGODB (например, mongodb://127.6.85.129:27017/).

Это всего лишь мои предположения, учитывая, что ваш вопрос немного скуден в деталях.Возможно, вы захотите опубликовать дополнительную информацию, чтобы мы могли более точно оценить вашу проблему.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top