Node.js充当前端应用程序的后端服务器

时间:2012-10-30 07:15:45

标签: javascript node.js socket.io

我想使用Node.js作为后端服务器来提供前端 socket.io 请求。

我找到的样本似乎只能从Node.js服务器运行页面。

<script src="/socket.io/socket.io.js"></script>

上面的js包含是由Node.js提供的,如果前端是一个不同的应用程序(例如PHP或静态页面),如何包含它?我是否需要包含所有依赖的socket.io js库才能使其正常工作?

2 个答案:

答案 0 :(得分:2)

我正在和node.js / socket.io一起运行apache / php 如果你正在尝试这样做,你可以通过在不同于apache服务的端口上提供socket.io来实现它(假定为80)。

在node.js中,初始化端口8080上的socket.io侦听器,例如:

var io = require('socket.io').listen(8080);

我相信,默认情况下,socket.io也会方便地为你提供静态客户端文件,这样在你的html中,你可以:

<script src="http://yourhost:8080/socket.io/socket.io.js"></script>

希望有所帮助。

答案 1 :(得分:0)

这完全取决于您的服务器配置。您可以选择未被任何其他资源使用的Node.js后端路径,并将您的Web服务器配置为提供其他所有内容。

E.g。对于Apache,我使用ProxyPass指令启用到不同端口上的本地Node.js的连接(绕过本地端口限制),但可能不是您的选择:

ProxyPass /help/server/ http://localhost:8002/ connectiontimeout=1500ms