【问题标题】:SRS how enable HTTPS for HLS stream?SRS 如何为 HLS 流启用 HTTPS?
【发布时间】:2021-01-30 02:49:35
【问题描述】:
我使用 Ubuntu 16 服务器和 apache,让我们加密证书。我今天直接从Git编译了SRS,所以我有最新版本。我正在尝试在所有站点上启用 HTTPS,我有一个播放器加载由 RTMP 传递的 HSL 流。如何启用 SSL?现在我收到连接关闭错误。我试图将 HLS 流的路径移动到证书覆盖的一个文件夹,但没有结果。
这是 SRS 的链接:https://github.com/ossrs/srs
如果有人需要更多详细信息,我可以回复。
【问题讨论】:
标签:
http-live-streaming
simple-realtime-server
【解决方案1】:
ossrs/srs 支持 https,但默认情况下不启用它。所以这样做是为了启用 https
-
我使用 docker 安装 ossrs/srs,默认配置为 https 使用端口 8088,所以记得为 docker 公开该端口
docker run -d -p 1935:1935 -p 1985:1985 -p 8080:8080 -p 8088:8088 \
ossrs/srs:v4 ./objs/srs -c conf/srs.conf
-
更改配置文件'/usr/local/srs/conf/srs.conf'中的http_server部分
改变
http_server {
enabled on;
listen 8080;
dir ./objs/nginx/html;
}
到
http_server {
enabled on;
listen 8080;
dir ./objs/nginx/html;
https {
# Whether enable HTTPS Streaming.
# default: off
enabled on;
# The listen endpoint for HTTPS Streaming.
# default: 8088
listen 8088;
# The SSL private key file, generated by:
# openssl genrsa -out server.key 2048
# default: ./conf/server.key
key ./conf/server.key;
# The SSL public cert file, generated by:
# openssl req -new -x509 -key server.key -out server.crt -days 3650 -subj "/C=CN/ST=Beijing/L=Beijing/O=Me/OU=Me/CN=ossrs.net"
# default: ./conf/server.crt
cert ./conf/server.crt;
}
}
-
记得上传你的server.key和server.crt到conf文件夹(你可以按照上面的评论指南生成自签名证书)
-
重启docker完成