기본 NodeJS 블로그 응용 프로그램을 구축했으며 CentOS7 Minimal VPS (OpenVZ i think)에서 호스팅하고 있습니다.서비스로 실행하면 NodeJS 사이트에 연결할 수 없습니다.
내 자식 저장소에서 복제 한 후 적합한 노드 버전 인 MongoDB를 설치했으며 npm 종속성을 "npm install"과 함께 설치했습니다.
오류없이 명령 줄에서 수동으로 사이트를 빌드하고 시작할 수 있으며 웹 브라우저를 통해 사이트에 연결하여 모든 것이 제대로 작동하는지 확인할 수 있습니다.
그러나 'sudo systemctl blog start'로 사이트를 시작하려고하면 아무 일도 일어나지 않습니다. 'stytemctl blog status'는 초록색 "활성 (실행 중)"텍스트를 표시하지만 브라우저를 통해 연결할 수 없습니다.
chmod +x server.js
:이 명령을 실행 파일 server.js을 한
[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
여기
[bbauer[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
는 /etc/systemd/system/blog.service에서 내 .service 파일입니다 누군가 내가 놓친 것 같은 것을 생각할 수 있습니까? 요청에 따라 server.js의
내용 :이 같은이 Node.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 파일을 추가했는데 첫 번째 줄 끝에서 '노드'를 끈 상태입니다. 나는 지금 시험 할 것이다. –
그건 분명히 해결책이었습니다. 어떻게 든 대답을 드릴 수 있습니까? 나는 아직도 새로운이에요. –