SkyRTC-demo icon indicating copy to clipboard operation
SkyRTC-demo copied to clipboard

在同一局域网内访问失败

Open zhonglu900505 opened this issue 9 years ago • 21 comments

直接报create stream failed!但是是有接入进来的, 创建新连接 3 新用户a48f097b-ea30-4773-ab27-a82ab3707981加入房间12 解决了,是因为浏览器不支持了

zhonglu900505 avatar Aug 08 '16 17:08 zhonglu900505

如何解决的?我这边看应该是因为不支持https

JanusSpark avatar Aug 20 '16 06:08 JanusSpark

@zhonglu900505 求告知,随时@我,或者邮箱[email protected]

JanusSpark avatar Aug 20 '16 06:08 JanusSpark

@zhonglu900505 我遇到与你相同的情况,请问一下如何解决的,谢谢

liyanginchina avatar Dec 08 '16 04:12 liyanginchina

chrome如果不是https无法使用,使用https之后websocket也需要使用wss,然后问题来了,服务端怎么添加ssl支持呢?

darkicerain avatar Jan 16 '17 18:01 darkicerain

@darkicerain server = require('https').createServer(options, app) options 包含私钥 key 和证书 crt

msyfls123 avatar Jan 29 '17 16:01 msyfls123

@zhonglu900505 想问下你最后是怎么解决的,问题和你的一样,换浏览器运行也不行

lxiaoixi avatar Apr 20 '17 12:04 lxiaoixi

skyrtc 这个包是不是不支持https 协议?

lxiaoixi avatar Apr 20 '17 12:04 lxiaoixi

@msyfls123 改成server = require('https').createServer(options,app)之后 直接连服务器都跑不起来了。

LointaineAIMEE avatar Apr 20 '17 12:04 LointaineAIMEE

@LointaineAIMEE options 是一个对象…… 跑不起来你看下报错是什么 我架起来是这样的,https://masy.site/webrtc/

msyfls123 avatar Apr 20 '17 12:04 msyfls123

能发下你的代码么 @msyfls123

lxiaoixi avatar Apr 20 '17 12:04 lxiaoixi

我也改成https协议了,但是只改了server.js这段,是不是其它部分也要改? @msyfls123 1

lxiaoixi avatar Apr 20 '17 12:04 lxiaoixi

我当时的解决办法是用了nginx来做https,反向代理到nodejs的端口,nodejs的部分全部都http就行了,代码不用改,只需要配置好nginx就ok了

darkicerain avatar Apr 20 '17 12:04 darkicerain

server.js

var express = require('express');
var app = express();
var https = require('https');
var fs = require('fs')
var server = https.createServer({
  key: fs.readFileSync('/path/to/your.key'),
  cert: fs.readFileSync('/path/to/your.crt')
}, app);
var SkyRTC = require('skyrtc').listen(server);

index.html

//rtc.connect("ws:" + window.location.href.substring(window.location.protocol.length).split('#')[0], window.location.hash.slice(1));
rtc.connect("wss://" + location.hostname  + ":3000/", window.location.hash.slice(1));

然后我还配了 Nginx 代理

location /webrtc/ {
    proxy_pass https://127.0.0.1:3000/;
}

msyfls123 avatar Apr 20 '17 12:04 msyfls123

新手没配置过Nginx...,谢谢啦,我去看看怎么配置 @darkicerain @msyfls123

lxiaoixi avatar Apr 20 '17 13:04 lxiaoixi

谢谢两位大哥了。我先按照你们说的看看。 @darkicerain @msyfls123

LointaineAIMEE avatar Apr 20 '17 13:04 LointaineAIMEE

我把项目部署到服务器上的时候也出现了这个问题。请问这个问题是所有浏览器都会出现还是只是chrome会出现呢?(本地测试了一下,所有的浏览器都会出现问题,问这个问题是想知道是我部署上的错误还是HTTPS导致的错误) @msyfls123 @darkicerain

norshtein avatar Apr 25 '17 12:04 norshtein

@norshtein 应该只有chrome会要求一定要https,我当时测试时是这样

darkicerain avatar Apr 26 '17 07:04 darkicerain

@msyfls123 发布的版本出错了

feifanyajun avatar May 06 '17 01:05 feifanyajun

@feifanyajun 重启了下...

msyfls123 avatar May 06 '17 02:05 msyfls123

有人解决这个问题了吗?能否把源码发一下

zero863 avatar Mar 29 '18 07:03 zero863

按F12就会发现出现了警告,insecure origin。 解决的办法是,找到chrome://flags,搜索insecure origins,找到如下图的选项。 image Insecure origins treated as secure enable此选项,然后在输入框中打入你要输入的IP:PORT。 重启生效。 第二种方法是,你为自己的域名设置https,可以使用Let's encrypt。

talent-nansy avatar Nov 26 '18 10:11 talent-nansy