【发布时间】:2014-03-09 01:10:19
【问题描述】:
我可以设置聊天没问题,但我的问题是如何让聊天在我的主站点所在的默认port:80 上工作?
首先想到的是iframing吗?
这是我的 server.js 代码,需要注意的一点是我不太喜欢 jade,所以我将把它转换成纯 HTML。此外,聊天必须在:80 以外的任何端口上工作,所以我不太确定如何让它在除 iframe 之外的主端口上工作?
所以我的问题显然是让 express 服务器在主端口上工作的选择是什么?
// Start server
var express = require("express");
var app = express();
var port = 3700;
// Directory
app.use(express.static(__dirname + '/chat'));
// Socket.io integration
var io = require('socket.io').listen(app.listen(port));
// Render content
app.set('views', __dirname + '/tpl');
app.set('view engine', "jade");
app.engine('jade', require('jade').__express);
app.get("/", function(req, res){
res.render("page");
});
// Recieve msg and send
io.sockets.on('connection', function (socket) {
socket.emit('message', { message: 'welcome to the chat' });
socket.on('send', function (data) {
io.sockets.emit('message', data);
});
});
【问题讨论】:
-
考虑通过 Node.js 在端口 80 上运行整个站点
-
如果是这样,我可能需要打开一个新问题或更改这个问题。这似乎很容易,但我不知道该怎么做。我是否使用所有主要的 html 代码(包括聊天 html 代码)来渲染翡翠模板。这是有道理的,但是你能在 :80 上运行一个快速服务器吗?我试过了,它说它正在使用中。
-
我的意思是基本上渲染聊天框,但添加主 index.html 中的所有代码并将其与聊天框 html 合并。然后提供该页面,当前在端口:3700 上运行,我不确定如何将其更改为默认值:80,这可能吗?
-
为了在端口 80 上运行 Node.js 服务器,您必须在端口 80 上终止现有服务器。您还可以将服务器配置为将一些请求转发到不同内部端口上的 Node.js .
-
哦,好吧,所以默认情况下,在 wamp/localhost 中,配置设置为在端口:80 上运行。我需要杀死/阻止它成为默认值,然后在端口:80 上使用相同的快速服务器逻辑?生病谷歌,该配置操作发生在哪里,但如果你知道随时分享:)
标签: javascript node.js sockets express