linux宝塔视频教程,linux 宝塔面板安装rtmp简陋教程 (已加视频版教程)

视频版 有部分命令执行的时间比较长 可以快进过去 可以先看一次视频 然后对着这里的命令进行输入即可

说明比较长,需要一定的操作动手能力才行。

基础条件 第一个必须是linux服务器 第二个安装了宝塔面板 第三编译安装nginx1.7.6+php5.61第一步

修改/www/server/panel/install/nginx.sh文件 如下图位置的文件

89a059527dcdc5d2fd191a71748d60c3.png

点编辑 找到 ./configure 部分 免费版7.1版大约在205行 我们添加一个 --add-module=/www/server/nginx_plus/nginx-rtmp-module 添加完成后如下:请勿直接复制 版本不一样 其他的配置也不一样./configure --add-module=/www/server/nginx_plus/nginx-rtmp-module --user=www --group=www --prefix=${Setup_Path} ${ENABLE_LUA} --add-module=${Setup_Path}/src/ngx_cache_purge --add-module=${Setup_Path}/src/nginx-sticky-module --with-openssl=${Setup_Path}/src/openssl --with-pcre=pcre-${pcre_version} ${ENABLE_HTTP2} --with-http_stub_status_module --with-http_ssl_module --with-http_image_filter_module --with-http_gzip_static_module --with-http_gunzip_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --with-ld-opt="-Wl,-E" --with-cc-opt="-Wno-error" ${jemallocLD} ${ENABLE_NGX_PAGESPEED} ${ADD_EXTENSION}

可以看出就是在 --user=www 前面加上了 --add-module=/www/server/nginx_plus/nginx-rtmp-module 空格隔开

添加完了 记得保存2第二步

打开XSHELL 命令工具 或者宝塔后台的 宝塔终端 输入你服务器的root密码登录。

执行 git clone https://github.com/arut/nginx-rtmp-module /www/server/nginx_plus/nginx-rtmp-module/  语句,直到100%完成

d2c402c23db5ca614d2502a6ad0a298d.png

如下图 回车等待下载完成3第三步

第二步完成后 输入命令  sh /www/server/panel/install/nginx.sh install 1.17   回车进行nginx的编译

就不截图了和上面一样 等待编译完成 完成后大概是这样的编译时间很快几分钟的事

71c43b1118771b2fbd9a295b4046f38c.png

注意,安装成功后就不要使用宝塔后台的NGINX切换版本功能了4第四步

www 文件夹下建立 tmp 文件夹 tmp文件夹下建立 live 文件夹

3b89b9fba502d490022cbc03297b1a4e.png

继续打开 /www/server/nginx/conf 目录下的 nginx.conf 文件

在events

{

use epoll;

worker_connections 51200;

multi_accept on;

}

下面加上rtmp {

server {

listen 1935;  #监听的端口

chunk_size 4000;

application hls {

live on;

hls on;

hls_path /www/tmp/live;#视频流存放地址

hls_fragment 1s;

hls_playlist_length 2s;

hls_continuous on; #连续模式。

hls_cleanup on;    #对多余的切片进行删除。

hls_nested on;     #嵌套模式。

}

}

}

c17c53674e75b81e55070b3777b26041.png

在access_log  /www/wwwlogs/access.log;

}

下面加上server

{

listen 8080;

####要配置https格式访问的话就要把下面的启用,即把开头的#号删除,同时修改域名及证书

#listen 8082 ssl;#https协议的端口号 比如 https://xx.com:8082/

#server_name svn.php168.com;#填写绑定证书的域名

#ssl_certificate    C:/nginx-rtmp-win32-dev/conf/svn.php168.com.crt;#换成自己的证书 注意路径

#ssl_certificate_key    C:/nginx-rtmp-win32-dev/conf/svn.php168.com.key;#换成自己的证书

#ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

#ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;

#ssl_prefer_server_ciphers on;

#ssl_session_cache shared:SSL:10m;

#ssl_session_timeout 10m;

#error_page 497  https://$host$request_uri;

location / {

root html;

}

location /stat {

rtmp_stat all;

rtmp_stat_stylesheet stat.xsl;

}

location /stat.xsl {

root /www/server/nginx_plus/nginx-rtmp-module/;

}

location /hls {  #添加视频流存放地址。

types {

application/vnd.apple.mpegurl m3u8;

video/mp2t ts;

}

#访问权限开启,否则访问这个地址会报403

autoindex on;

alias /www/tmp/live;#视频流存放地址,与上面的hls_path相对应,这里root和alias的区别可自行百度

expires -1;

add_header Cache-Control no-cache;

#防止跨域问题

add_header 'Access-Control-Allow-Origin' '*';

add_header 'Access-Control-Allow-Credentials' 'true';

add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';

add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';

}

}

rtmp 的配置比较多 可以自行百度进行参数的设置这里仅仅是示例

添加完成后的完整配置:(可以对照着修改)user  www www;

worker_processes auto;

error_log  /www/wwwlogs/nginx_error.log  crit;

pid        /www/server/nginx/logs/nginx.pid;

worker_rlimit_nofile 51200;

events

{

use epoll;

worker_connections 51200;

multi_accept on;

}

rtmp {

server {

listen 1935;  #监听的端口

chunk_size 4000;

application hls {

live on;

hls on;

hls_path /www/tmp/live;#视频流存放地址

hls_fragment 1s;

hls_playlist_length 2s;

hls_continuous on; #连续模式。

hls_cleanup on;    #对多余的切片进行删除。

hls_nested on;     #嵌套模式。

}

}

}

http

{

include       mime.types;

#include luawaf.conf;

include proxy.conf;

default_type  application/octet-stream;

server_names_hash_bucket_size 512;

client_header_buffer_size 32k;

large_client_header_buffers 4 32k;

client_max_body_size 50m;

sendfile   on;

tcp_nopush on;

keepalive_timeout 60;

tcp_nodelay on;

fastcgi_connect_timeout 300;

fastcgi_send_timeout 300;

fastcgi_read_timeout 300;

fastcgi_buffer_size 64k;

fastcgi_buffers 4 64k;

fastcgi_busy_buffers_size 128k;

fastcgi_temp_file_write_size 256k;

fastcgi_intercept_errors on;

gzip on;

gzip_min_length  1k;

gzip_buffers     4 16k;

gzip_http_version 1.1;

gzip_comp_level 2;

gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml;

gzip_vary on;

gzip_proxied   expired no-cache no-store private auth;

gzip_disable   "MSIE [1-6]\.";

limit_conn_zone $binary_remote_addr zone=perip:10m;

limit_conn_zone $server_name zone=perserver:10m;

server_tokens off;

access_log off;

server

{

listen 888;

server_name phpmyadmin;

index index.html index.htm index.php;

root  /www/server/phpmyadmin;

#error_page   404   /404.html;

include enable-php.conf;

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

{

expires      30d;

}

location ~ .*\.(js|css)?$

{

expires      12h;

}

location ~ /\.

{

deny all;

}

access_log  /www/wwwlogs/access.log;

}

server

{

listen 8080;

####要配置https格式访问的话就要把下面的启用,即把开头的#号删除,同时修改域名及证书

#listen 8082 ssl;#https协议的端口号 比如 https://xx.com:8082/

#server_name svn.php168.com;#填写绑定证书的域名

#ssl_certificate    C:/nginx-rtmp-win32-dev/conf/svn.php168.com.crt;#换成自己的证书 注意路径

#ssl_certificate_key    C:/nginx-rtmp-win32-dev/conf/svn.php168.com.key;#换成自己的证书

#ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

#ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;

#ssl_prefer_server_ciphers on;

#ssl_session_cache shared:SSL:10m;

#ssl_session_timeout 10m;

#error_page 497  https://$host$request_uri;

location / {

root html;

}

location /stat {

rtmp_stat all;

rtmp_stat_stylesheet stat.xsl;

}

location /stat.xsl {

root /www/server/nginx_plus/nginx-rtmp-module/;

}

location /hls {  #添加视频流存放地址。

types {

application/vnd.apple.mpegurl m3u8;

video/mp2t ts;

}

#访问权限开启,否则访问这个地址会报403

autoindex on;

alias /www/tmp/live;#视频流存放地址,与上面的hls_path相对应,这里root和alias的区别可自行百度

expires -1;

add_header Cache-Control no-cache;

#防止跨域问题

add_header 'Access-Control-Allow-Origin' '*';

add_header 'Access-Control-Allow-Credentials' 'true';

add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';

add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';

}

}

include /www/server/panel/vhost/nginx/*.conf;

}

最后记得点保存。

19c3e3af4cbeebe1822be5c304c080ca.png

点他后面的设置按钮  先点重载配置 再点重启

5c83522c396e56e2f8cd1f403bb00b3b.png

5最后一步

eacba23fa791c69b3a9c5bbe53dbba12.png

在这里我们可以添加一个 ip或者你域名的网站

推流地址:rtmp://122.51.110.79/hls/selfserver162    ip可以是你这里绑定的域名或者ip  selfserver162 是流名称

后台插件设置

a367f028ebf24b3b4a7ad1d3d2762e6f.png

以下是隐藏的内容需要回复才可见,你回复后,需要刷新网页才可见!************************************

下载附件解压 放到你新创建的这个网站根目录。

宝塔后台添加一个定时任务一分钟执行一次就好

或者在xshell cd到你刚刚创建的网站根目录执行   nohup php zhibo.php &  任何按任意键返回控制台 再关闭xshell即可

定时任务和命令模式只能选择一个

zhibo.php 请打开修改17  18  19行为自己的网址

$web_url 为你展示直播的网站

$play_server 和$stat_url 为你最后一步在直播服务器创建的网站域名或者ip

步骤比较多 中间也修正过多次 应该是没有遗漏了 出问题概不负责 也是瞎鼓捣的

提供一个测试直播服务器  http://122.51.110.79  直播插件选择自建服务器 输入这个ip即可 有效期一个月 1核1G1M宽带的 1块钱买了一个月测试了下自建服务器 没有用了

补充SSL的配置教程:

zhibo.php  仅修改 protected static $play_server='https://suifeng.cnsheep.cn:8082';  这里改为你的SSL网址+8082端口号

www 目录下新建 crt目录 里面新建2个文件 live.crt 和live.key 把我们申请到的证书写到文件中 或者直接上传到这里也可以随便都可以。

3433047f885b233367bc91c179d1b6ae.png

/www/server/nginx/conf/nginx.conf  的配置如下:对照着改一下 别直接复制过去user  www www;

worker_processes auto;

error_log  /www/wwwlogs/nginx_error.log  crit;

pid        /www/server/nginx/logs/nginx.pid;

worker_rlimit_nofile 51200;

events

{

use epoll;

worker_connections 51200;

multi_accept on;

}

rtmp {

server {

listen 1935;  #监听的端口

chunk_size 4000;

application hls {

live on;

hls on;

hls_path /www/tmp/live;#视频流存放地址

hls_fragment 2s;

hls_playlist_length 5s;

hls_continuous on; #连续模式。

hls_cleanup on;    #对多余的切片进行删除。

hls_nested on;     #嵌套模式。

}

}

}

http

{

include       mime.types;

#include luawaf.conf;

include proxy.conf;

default_type  application/octet-stream;

server_names_hash_bucket_size 512;

client_header_buffer_size 32k;

large_client_header_buffers 4 32k;

client_max_body_size 50m;

sendfile   on;

tcp_nopush on;

keepalive_timeout 60;

tcp_nodelay on;

fastcgi_connect_timeout 300;

fastcgi_send_timeout 300;

fastcgi_read_timeout 300;

fastcgi_buffer_size 64k;

fastcgi_buffers 4 64k;

fastcgi_busy_buffers_size 128k;

fastcgi_temp_file_write_size 256k;

fastcgi_intercept_errors on;

gzip on;

gzip_min_length  1k;

gzip_buffers     4 16k;

gzip_http_version 1.1;

gzip_comp_level 2;

gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml;

gzip_vary on;

gzip_proxied   expired no-cache no-store private auth;

gzip_disable   "MSIE [1-6]\.";

limit_conn_zone $binary_remote_addr zone=perip:10m;

limit_conn_zone $server_name zone=perserver:10m;

server_tokens off;

access_log off;

server

{

listen 888;

server_name phpmyadmin;

index index.html index.htm index.php;

root  /www/server/phpmyadmin;

#error_page   404   /404.html;

include enable-php.conf;

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

{

expires      30d;

}

location ~ .*\.(js|css)?$

{

expires      12h;

}

location ~ /\.

{

deny all;

}

access_log  /www/wwwlogs/access.log;

}

server

{

listen 8080;

####要配置https格式访问的话就要把下面的启用,即把开头的#号删除,同时修改域名及证书

listen 8082 ssl;#https协议的端口号 比如 https://xx.com:8082/

server_name suifeng.cnsheep.cn;#填写绑定证书的域名

ssl_certificate    /www/crt/live.crt;#换成自己的证书 注意路径

ssl_certificate_key    /www/crt/live.key;#换成自己的证书

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;

ssl_prefer_server_ciphers on;

ssl_session_cache shared:SSL:10m;

ssl_session_timeout 10m;

error_page 497  https://$host$request_uri;

location / {

root html;

}

location /stat {

rtmp_stat all;

rtmp_stat_stylesheet stat.xsl;

}

location /stat.xsl {

root /www/server/nginx_plus/nginx-rtmp-module/;

}

location /hls {  #添加视频流存放地址。

types {

application/vnd.apple.mpegurl m3u8;

video/mp2t ts;

}

#访问权限开启,否则访问这个地址会报403

autoindex on;

alias /www/tmp/live;#视频流存放地址,与上面的hls_path相对应,这里root和alias的区别可自行百度

expires -1;

add_header Cache-Control no-cache;

#add_header Access-Control-Allow-Origin *;

add_header 'Access-Control-Allow-Origin' '*' always;

add_header 'Access-Control-Allow-Credentials' 'true';

add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';

add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';

}

}

include /www/server/panel/vhost/nginx/*.conf;

}

改完后 重启服务器 记得安全组放行8082端口

在xshell cd到你刚刚创建的网站根目录执行nohup php zhibo.php &任何按任意键返回控制台 再关闭xshell即可

ca5072cabe4f854f2d5f7d924ed9495d.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值