我刚刚安装了Node.js,让它工作了一段时间,然后尝试运行一个标准的Hello World程序。
var http = require("http");
http.createServer(function (request, response) {
// Send the HTTP header
// HTTP Status: 200 : OK
// Content Type: text/plain
response.writeHead(200, {'Content-Type': 'text/plain'});
// Send the response body as "Hello World"
response.end('Hello World\n');
}).listen(8081);
// Console will print the message
console.log('Server running at http://127.0.0.1:8081/');
然后,我启动了为节点http://node.foobar.com设置的域--上周在我的域上进行了相同的操作,我成功地让它打印了Hello World
。
上周也是这样,我关闭了服务器,编辑了代码,然后重新运行服务器,如果我不等几分钟再运行的话,服务器就会变成503。但是,这次等也没用。
域的Apache配置:
<VirtualHost *:80>
ServerAdmin zadmin@localhost
DocumentRoot "/var/zpanel/hostdata/zadmin/public_html/node"
ServerName node.foobar.com
ProxyRequests on
ProxyPass / http://localhost:3102/
# Custom settings are loaded below this line (if any exist)
</VirtualHost>
2条答案
按热度按时间b0zn9rqh1#
如何设置域?
是否使用其他HTTP服务器作为代理?
请检查节点是否正在运行,如果是,请检查HTTP服务器是否也在运行。
可能是您的节点崩溃或只是没有运行。
另一个测试是直接连接节点:
http://127.0.0.1:8081/
bjp0bcyl2#
我也遇到了同样的问题。我们使用(不再支持的)“node-ews”库从我们的Exchange服务器加载电子邮件/附件,它经常抛出503错误。
我的同事告诉我,meh,这是微服务的预期行为(真的吗?),我只需要使用一个库来增加一些弹性,例如。
https://github.com/resilient-http/resilient.js/#how-does-it-work
我的解决方案是实际调用Exchange端点,如果是503错误,记录它(并显示我们重试了多少次),等待一秒钟,然后重试。这确实为我解决了问题。
是的,它很丑,但可怕的是,它工作得很好。
显然,“真实的”版本将消息记录到日志服务,而不是控制台。