使用nginx 共享服务器中的视频

nginx 共享服务器中的视频

如果服务器处于内网或者没有公网ip,可以使用 相关软件进行打洞或转发 如: frpc https://github.com/fatedier/frpholer https://github.com/wisdom-projects/holer

服务器中有很多视频,有时候在外面想要看些视频的时候就有些麻烦了.可以通过http共享然后使用vlc之类播放器播放.但是需要自制播放列表很是麻烦.

使用nginx_rtmp_module 查件可以实现 直接从目录方式访问点击视频就可以播放的效果.

所以nginx是必要的.而且要源码编译,编译时候要加上nginx_rtmp_module 这个模块.

下载编译安装

必要的编译包自行安装.gcc之类还有一些依赖包

 wget http://nginx.org/download/nginx-1.16.0.tar.gz
 wget https://github.com/arut/nginx-rtmp-module/archive/master.zip
 tar xf nginx-1.16.0.tar.gz
 unzip master.zip
 cd nginx-1.16.0
 mv * ../
 cd ..
 ./configure --with-http_ssl_module  --add-module=../nginx-rtmp-module-master
 make -j4
 make install

至此nginx编译安装完成.

配置nginx

vim /usr/local/nginx/conf/nginx.conf

#user  nobody;
worker_processes  2;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {
    worker_connections  1024;
}

rtmp {
    server {
        listen 1935;

        application vod {
            play /mnt/s2t; #这是一个目录的名称,如果是linux,则写具体位置如/opt/video
        }
    }
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    gzip  on;

    server {
        listen       8080;
        server_name  localhost;

        charset utf8;

        #access_log  logs/host.access.log  main;

        location / {
            root   /mnt/s2t;
        autoindex on;
        auth_basic "needAuth";
        auth_basic_user_file /usr/local/nginx/conf/passwd.db;
        index  index.html index.htm;
        }

        location /test.flv {
            root video;
        }

        location /stat {
            rtmp_stat all;
            rtmp_stat_stylesheet stat.xsl;
        }

        location /stat.xsl {
            root html;
        }

}

生成登录验证密码文件

htpasswd -c /usr/local/nginx/conf/passwd.db makeit

测试访问

/usr/local/nginx/sbin/nginx -s reload

右键支持倍速播放哦.

参考:

关于模块更多信息

https://github.com/arut/nginx-rtmp-module

原文地址:https://www.cnblogs.com/lovesKey/p/11027348.html

时间: 2024-08-29 23:26:00

使用nginx 共享服务器中的视频的相关文章

Android中直播视频技术探究之---视频直播服务端环境搭建(Nginx+RTMP)

一.前言 前面介绍了Android中视频直播中的一个重要类ByteBuffer,不了解的同学可以 点击查看 到这里开始,我们开始动手开发了,因为我们后续肯定是需要直播视频功能,然后把视频推流到服务端,本地在进行拉流播放的流程.所以这个过程中,我们需要首先来把服务端这个中间环节的工作搞定,后续再弄推流和拉流功能.现在推流大部分都是使用RTMP/HLS协议的,关于这两个协议的区别: 所以我们服务端搭建就需要用这两个协议,不过本文放心了,不会去手动的编写一套协议代码的,谁叫这个世界属于开源呢? 需要的

微信朋友圈视频链接中的视频怎么下载到电脑?

[操作方法及原理]:将视频链接发送到电脑,使用工具下载链接中的视频到自己电脑. http://jingyan.baidu.com/article/48b37f8d3fd09a1a6464882d.html 维棠 将视频链接中的视频进行下载

如何在html中插入视频

如何在html中插入视频 1,插入优酷视频: 在优酷分享界面有个html代码,直接复制放入body中,定义div的align居中即可 2.插入本地视频:用video属性  用mp4格式 <video>标签的属性 src :视频的属性 poster:视频封面,没有播放时显示的图片 preload:预加载 autoplay:自动播放 loop:循环播放 controls:浏览器自带的控制条 width:视频宽度 height:视频高度

Android中直播视频技术探究之---基础核心类ByteBuffer解析

一.前言 前一篇文章我们介绍了Android中直播视频技术的基础大纲知识,这里就开始一一讲解各个知识点,首先主要来看一下视频直播中的一个重要的基础核心类:ByteBuffer,这个类看上去都知道了,是字节缓冲区处理字节的,这个类的功能非常强大,也在各个场景都有用到,比如网络数据底层处理,特别是结合网络通道信息处理的时候,还有就是后面要说到的OpenGL技术也要用到,当然在视频处理中也是很重要的,因为要处理视频流信息,比如在使用MediaCodec进行底层的视频流编码的时候,处理的就是字节,我们如

WebView中的视频全屏的相关操作

最近工作中,基本一直在用WebView,今天就把它整理下: WebView 顾名思义,就是放一个网页,一个看起来十分简单,但是用起来不是那么简单的控件. 首先你肯定要定义,初始化一个webview,其实网上的例子很多,我这里就简单的把一些WebView 中可能会用到的的很重要的属性以及支持全屏播放视频该怎么实现的代码粘出来,直接放到项目中去就行了 <span style="white-space:pre"></span><pre name="co

【转】向HTML中插入视频并兼容所有浏览器的方法

原文地址:http://www.jb51.net/web/168548.html 向HTML中插入视频有两种方法,一种是古老的object标签,一种是html5中的video标签,前者兼容性相对好些,后者兼容性让人头疼 最常用的向HTML中插入视频的方法有两种,一种是古老的<object></object>标签,一种是html5中的<video></video>标签. 前者的兼容性没得说,但是使用起来不太方便,后者使用起来很方便,但是兼容性让人头疼. 虽然后

在Winform中播放视频等【DotNet,C#】

在项目中遇到过这样的问题,就是如何在Winform中播放视频.当时考察了几种方式,第一种是直接使用Windows Media Player组件,这种最简单:第二种是利用DirectX直接在窗体或者控件上绘图,这种比较复杂.于是采用的是第一种方法. 先从VS的工具箱里添加Windows Media Player组件,方式是打开工具箱,在最下面的空白处点击右键,选择项,然后在弹出的对话框里切换到Com组件标签项,找到“Windows Media Player”项并选中,确定后将在工具箱中看到多出一个

nginx FastCGI中的概念区分

之前总没有把FastCGI的概念理解的很清楚,看到一段话,感觉说的很清楚了. nginx是支持fastcgi的.然而我们需要下一个fastcgi进程管理器,启动它才能执行fastcgi程序.(这里有几个概念要搞清楚:nginx是nginx,fastcgi是fastcgi,前者支持后者,但是前者本身没有集成后者(/的功能).对于ngingx,我们要配置conf.nginx来设置如何支持fastcgi.而对于fastcgi,我们写的fastcgi程序需要一个调度者:fastcgi进程管理器. 其实也

向HTML中插入视频,兼容所有浏览器

最常用的向HTML中插入视频的方法有两种,一种是古老的<object></object>标签,一种是html5中的<video></video>标签. 前者的兼容性没得说,但是使用起来不太方便,后者使用起来很方便,但是兼容性让人头疼. 虽然后者兼容性存在很多问题,但是因为使用很方便,符合未来网页设计发展的趋势,因此我们以后者为主要的插入视频的方法,因为它兼容性的问题,前者作为辅助. 示例如下: <video width="602px"