Я создал базовое приложение для блога NodeJS, и я размещаю его на Centos7 Minimal VPS (OpenVZ, я считаю).Не удается подключиться к моему сайту NodeJS при запуске службы. Нет сообщений об ошибках, которые я могу найти
После клонирования из моего репозитория git я установил соответствующую версию узла, MongoDB и зависимости npm с «npm install».
Я могу создать и запустить сайт вручную из командной строки без каких-либо ошибок и добраться до сайта через веб-браузер, чтобы убедиться, что все работает.
Однако, когда я пытаюсь запустить сайт с 'sudo systemctl blog start', ничего не происходит. «Статус stytemctl blog» показывает зеленый «активный (рабочий)» текст, но я не могу подключиться через браузер.
[[email protected] Blog-Project]$ sudo systemctl status blog
● blog.service - blog nodejs server
Loaded: loaded (/etc/systemd/system/blog.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2016-07-20 15:56:31 EST; 2min 52s ago
Main PID: 12451 (server.js)
CGroup: /system.slice/blog.service
└─12451 /usr/bin/env /var/www/Blog-Project/server.js
Вот мой .Service файл из /etc/systemd/system/blog.service
[Unit]
Description=blog nodejs server
After=network.target
[Service]
ExecStart=/var/www/Blog-Project/server.js
Restart=always
User=root
Group=nobody
Environment=PATH=/usr/bin:/usr/local/bin
Environment=NODE_ENV=production
WorkingDirectory=/var/www/Blog-Project
[Install]
WantedBy=multi-user.target
Я сделал server.js исполняемого с этой командой:
chmod +x server.js
Может ли кто-нибудь подумать о чем-то, что я, возможно, пропустил?
содержание server.js в соответствии с просьбой:
#!/usr/bin/env
// Require packages
var express = require('express');
var cors = require('cors');
var bodyParser = require('body-parser');
var mongoose = require('mongoose');
var stormpath = require('express-stormpath');
var app = express();
// Middleware
app.use(cors());
app.use(bodyParser.json());
app.use(bodyParser.urlencoded());
app.use(express.static(__dirname + '/views'));
app.use('/images', express.static(__dirname + '/images'));
...... etc., etc...
Что у вас на сервере server.js? ваша система связывает файлы .js с узлом node.js или вам нужно указать путь узла в вашем служебном файле? – leetibbett
Я добавил файл server.js, и я заметил, что я оставил «узел» в конце первой строки. Я проверю сейчас. –
Это было определенно решение. Могу ли я дать вам ответ? Я все еще новичок в SO. –