为什么我在上网几个小时后收到 503 错误? node/express
Why am I getting 503 error after some hours online? node/express
我是 node.js 的新手,对服务器了解不多。
我制作了一个节点应用程序并在我的服务器(php 中有一些其他网站,因此它需要与 apache 一起工作)中使用 node server.js &
启动它。
它工作得很好,它一直保持 运行 直到第二天,当我收到 503 错误时。使用 ssh 再次进入我的服务器并发现它不工作,所以我再次开始使用 nodemon 运行 nodemon server.js &
。
同样的事情,几个小时后我再次遇到 503 错误。
我遵循的步骤:
1. 在 /var/www/
中创建网站文件夹
2. 在 /etc/apache2/sites-available/ 中创建网站配置(mysite.com.conf 文件如下所示)
3. 使用 e2ensite
启用站点
5. 运行 SLL 证书的 cerbot
6.重新加载apache
7. 使用 nodemon server.js > log.out &
启动应用程序
我创建了 mysite.com.conf,如下所示:
<VirtualHost *:80>
ServerAdmin user@MAINDOMAIN.com
ServerName MYSITE.MAINDOMAIN.com
ServerAlias www.MYSITE.MAINDOMAIN.com
DocumentRoot /var/www/MYSITE.MAINDOMAIN.com/public
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory "/var/www/MYSITE.MAINDOMAIN.com/public">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ProxyPass / http://127.0.0.1:7000/
ProxyPassReverse / http://127.0.0.1:7000/
RewriteEngine on
RewriteCond %{SERVER_NAME} =MYSITE.MAINDOMAIN.COM [OR]
RewriteCond %{SERVER_NAME} =www.MYSITE.MAINDOMAIN.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI}
[END,NE,R=permanent]
</VirtualHost>
我的 server.js 文件如下所示:
const express = require('express')
const mysql = require('mysql')
const app = express()
//mysql database connection here
//some app.get() here to render pages
const server = app.listen(7000, () => {
console.log('Express running on port ${server.address().port}');
});
我在 log.out 中收到的最后一条消息是 app crashed - waiting for file changes before starting
。
我怎样才能保留这个 运行?我是不是做错了什么?
开始使用 forever 和 --exitcrash
。
我是 node.js 的新手,对服务器了解不多。
我制作了一个节点应用程序并在我的服务器(php 中有一些其他网站,因此它需要与 apache 一起工作)中使用 node server.js &
启动它。
它工作得很好,它一直保持 运行 直到第二天,当我收到 503 错误时。使用 ssh 再次进入我的服务器并发现它不工作,所以我再次开始使用 nodemon 运行 nodemon server.js &
。
同样的事情,几个小时后我再次遇到 503 错误。
我遵循的步骤:
1. 在 /var/www/
中创建网站文件夹
2. 在 /etc/apache2/sites-available/ 中创建网站配置(mysite.com.conf 文件如下所示)
3. 使用 e2ensite
启用站点
5. 运行 SLL 证书的 cerbot
6.重新加载apache
7. 使用 nodemon server.js > log.out &
我创建了 mysite.com.conf,如下所示:
<VirtualHost *:80>
ServerAdmin user@MAINDOMAIN.com
ServerName MYSITE.MAINDOMAIN.com
ServerAlias www.MYSITE.MAINDOMAIN.com
DocumentRoot /var/www/MYSITE.MAINDOMAIN.com/public
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory "/var/www/MYSITE.MAINDOMAIN.com/public">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ProxyPass / http://127.0.0.1:7000/
ProxyPassReverse / http://127.0.0.1:7000/
RewriteEngine on
RewriteCond %{SERVER_NAME} =MYSITE.MAINDOMAIN.COM [OR]
RewriteCond %{SERVER_NAME} =www.MYSITE.MAINDOMAIN.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI}
[END,NE,R=permanent]
</VirtualHost>
我的 server.js 文件如下所示:
const express = require('express')
const mysql = require('mysql')
const app = express()
//mysql database connection here
//some app.get() here to render pages
const server = app.listen(7000, () => {
console.log('Express running on port ${server.address().port}');
});
我在 log.out 中收到的最后一条消息是 app crashed - waiting for file changes before starting
。
我怎样才能保留这个 运行?我是不是做错了什么?
开始使用 forever 和 --exitcrash
。