gpt4 book ai didi

node.js - 443 apache SSL 端口和 8888 https 监听端口不起作用 - Node.js - socket.io

转载 作者:太空宇宙 更新时间:2023-11-03 13:41:38 25 4
gpt4 key购买 nike

目前我有以下问题:

我有一个 apache 服务器,在端口 443 上运行 SSL,在端口 80 上运行标准 (http)。此外,还安装了带有 socket.io 模块的 Node.js 服务器。

我用一个监听端口 3000 的 http 服务器编写了一个 socket.io javascript,所以在客户端(浏览器)中我像这样包含了 socket.io.js

<script type="text/javascript" src="http://www.example.com:3000/socket.io/socket.io.js"></script>

这非常有效,当我通过 http://www.example.com 执行我的网站时.浏览器正确找到 socket.io.js。

如果我通过 https 执行我的网站,例如 https://www.example.com ,我这样调整上面的脚本部分:

<script type="text/javascript" src="https://www.example.com:8888/socket.io/socket.io.js"></script>

我将 src 更改为 https:// 并将端口更改为 8888。现在我还必须调整我的 socket.io 脚本。

var https = require('https');
var fs = require('fs');
var socketio = require('socket.io');

// The server options
var svrPort = 8888; // This is the port of service

var svrOptions = {
key: fs.readFileSync('/path/to/example.key'),
cert: fs.readFileSync('/path/to/example-ca.crt'),
ca: fs.readFileSync('/path/to/example-server.pem')
};

// Create a Basic server and response
var servidor = https.createServer( svrOptions , function( req , res ){
res.writeHead(200);
res.end('Hi! Code here...');
});

// Create the Socket.io Server over the HTTPS Server
io = socketio.listen( servidor );

// Now listen in the specified Port
servidor.listen( svrPort );

如果我用 Node 执行文件,socket.io 正确启动:

info  - socket.io started

但问题来了:如果我在浏览器中执行 socket.io.js 文件的 URL,没有任何反应:

https://www.example.com:8888/socket.io/socket.io.js

Firefox 回答:数据通信中断

Node 服务器也没有收到请求。 socket.io 没有反应。

我必须做什么?

谢谢!

最佳答案

这里需要两个 js 脚本,一个用于 node.js 服务器(我假设是您发布的那个),一个嵌入到 html 页面中。

<source>标记与 node.js 服务器脚本的执行无关。它说明客户端在加载 HTML 页面时将下载客户端 js 脚本的位置。因此,它需要可以从您的浏览器下载 - 只需尝试自己输入该 URL。

socket.io 代码的客户端接收其内容的地址(node.js 服务器的地址)必须在客户端 js 中更新。

根据项目的大小,为什么不也使用 node.js 作为静态内容的唯一服务器?

关于node.js - 443 apache SSL 端口和 8888 https 监听端口不起作用 - Node.js - socket.io,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19480568/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com