2015-03-14 3 views
0

Я новичок в expressjs и пытаюсь получить мое экспресс-приложение (выполненное с помощью генератора экспресс-памяти), работающее на моем веб-сайте, в настоящее время я загрузил каталог, который содержится в нем так.Получение экспресс-приложения, работающего онлайн

http://www.example.com/express-app-here 

, так что я мог видеть, как он работает в Интернете. Однако, когда я перехожу туда, где находится приложение, я, похоже, получаю только структуру каталогов, и выражение не направляет меня в соответствующее место, как это происходит, когда я перехожу на localhost: 3000.

Я полагаю, что это связано с тем, что экспресс не выполняет мое приложение? Локально

npm start 

необходимо запустить на консоли, чтобы заставить его работать, есть какой-то журнал, мне нужно, чтобы выполнить эту команду? Или что-то мне нужно изменить в каталоге app.js или/bin?

+0

Вы запускаете сервер, используя порт 80? Установили ли вы '+ x' разрешения на' bin/www'? – victorkohl

+0

Да, Nodejs должен постоянно работать, чтобы обслуживать ваш сайт. Является ли ваш сервер удаленного сервера Apache? Если это так, я предполагаю, что он преследует весь порт 80, и вам нужно будет сказать Nodejs, чтобы прослушивать другой порт. – bloodyKnuckles

+0

На мой взгляд, самая большая проблема заключается в том, что вам нужно установить nodejs и запустить его на вашем сервере. Если это только сервер apache/PHP, вы не можете использовать узел. Если вы можете подключиться к нему и иметь достаточные права на установку узла и его выполнение, вы сможете установить приложение (не забудьте установить npm) и запустить его. –

ответ

0

Как уже было сказано в комментариях, на вашем сервере необходимо установить nodejs. Это не так просто, как просто скопировать каталог приложений узла на сервер.

Вам нужно будет установить узел и npm на сервер, а затем запустите приложение с сервера, возможно, используя npm start, как вы делали на своей локальной машине.

Оттуда вы захотите войти в свой код приложения и убедиться, что маршрут существует для/express-app-here, если вы не хотите, чтобы www.example.com:3000 доставил вас прямо в экспресс-приложение.

-1

В принципе сделать это следующим образом: `

var express = require('express'); 
var http = require('http'); 


var app = express(); 


var server = http.createServer(app); 
var port = process.env.PORT || config.webServer.port || 3000; 

server.listen(port, function() { 
    console.log('server running'); 
    console.log(port); 
    console.log(server); 
}); 

exports.module = exports = app; 

сохранить его app.js

Перейти к пути через ЦМД. Теперь запустите: -

1) НПМ установки экспресс 2) НПМ установить HTTP

3) узел app.js

Будет достаточно, чтобы запустить экспресс-сервер

+1

У них уже есть рабочее приложение Express, проблема связана с _hosting_ этим приложением на (предположительно) общедоступной платформе хостинга. – robertklep

Смежные вопросы