Windows下搭建nginx和rtspToWebRTC以及Windows程序添加为服务开机启动和后台运行

1. 前言

之前的rtsp转webrtc的服务很好用(https://blog.csdn.net/weixin_39510813/article/details/123718363?spm=1001.2014.3001.5502),测试使用效果都很好,而且由于Go的特性很容易将程序编译为跨平台的程序。由于高并发的需求,一般会搭建nginx服务,Linux和openwrt上都测试过命令直接安装运行nginx可行,这里在Windows下也做简单总结便于后续服务搭建在Windows上。

2. Windows下安装配置nginx

参考:https://cloud.tencent.com/developer/article/1888447

2.1 nginx下载

http://nginx.org/en/download.html
可以下载稳定版本、最新版本或者其它必要的问题:
在这里插入图片描述

下载完直接解压放到某个目录即可,比如直接放到D盘等。

2.2 nginx启动

可以直接点击nginx.exe运行或者在cmd终端上到该目录下start nginx。直接点击的可以在任务管理器中看到nginx进程。
nginx包含一个主进程和子进程,如果多于两个可能就是启动太多了:
在这里插入图片描述

2.3 测试验证

默认不改配置文件的话监听启动端口就是80端口,可以在浏览器上查看:
在这里插入图片描述

2.4 nginx关闭

关闭的话可以通过任务管理器直接杀死进程,也可以通过命令去stop,这个就不多说了。
可以通过-help了解一下:
在这里插入图片描述

2.5 注意事项

注意:nginx如果重启后更改的nginx.conf的配置也无法生效的话可能是nginx被多次启动了,看一下任务管理器中nginx进程是否多次启动了,nginx是可以多次启动的,这可能会造成问题。

3. 将nginx和rtspToWebRTC程序注册为服务进行管理

3.1 将nginx注册为服务

3.1.1 下载winsw工具

我们借助Windows Service Wrapper小工具:https://github.com/winsw/winsw/releases
在这里插入图片描述

3.1.2 工具安装使用
  • 步骤一:下载后将该工具放入Nginx的安装目录下,并且将其重命名为 nginx-service.exe ;
  • 步骤二:在nginx安装目录下新建服务日志文件夹server-logs文件夹,用来存放nginx服务相关日志。
  • 步骤三:在该目录下新建 nginx-service.xml 文件,写入配置信息,配置好了之后就可以通过这个将Nginx注册为Windows服务了。

文件配置内容如下:重点包括三个,日志文件位置、启动命令、关闭命令;照猫画虎即可:

<!-- nginx-service.xml -->
<service>
    <id>nginx</id>
    <name>nginx</name>
    <description>nginx</description>
    <logpath>D:\work\nginx\nginx-1.18.0\server-logs\</logpath>
    <logmode>roll</logmode>
    <depend></depend>
    <executable>D:\work\nginx\nginx-1.18.0\nginx.exe</executable>
    <stopexecutable>D:\work\nginx\nginx-1.18.0\nginx.exe -s stop</stopexecutable>
</service>
3.1.3 注册进Windows服务

以上内容配置好了之后,在nginx安装目录下以管理员运行命令:.\nginx-service.exe install 就成功将其注册为Windows服务了。这时我们就可以在Windows任务管理器的服务中查看到nginx服务了。
取消注册则是 xxx uninstall
可以通过任务管理器进到服务管理(PS:搜索进程和服务的时候可以直接输入进程首字母比如nginx进程的n来快速定位,不用一个个慢慢找):
在这里插入图片描述

右键服务进行运行、停止、重启都可以的,在任务管理器中也是可以直接操作的。
服务右键属性确认一下启动类型是否为自动,一般都是自动的,自动的话就会开机自启:
在这里插入图片描述

3.2 将rtspToWebRTC注册进服务

rtspToWebRTC进行了简单的修改:https://github.com/commanderZY/RTSPtoWebRTC
前端简单修改可以一个界面同时展现多路视频流,stun服务我们可以自己搭建,网上免费的有的时候服务可能会被关掉(stun/turn的服务搭建后面我们也会总结一下)。
自启动的配置和nginx操作是类似的,改一下位置和命令即可。
在这里插入图片描述

测试:
在这里插入图片描述

带宽和性能足够的情况下是可以添加多路流的,前端界面也可以修改下将多路摄像头流一起展示,修改服务地址摄像头rtsp地址或stun地址直接修改配置json文件后重启服务即可:
在这里插入图片描述

4. 最后

接下来我们总结一下搭建stun服务的搭建和使用,自己有域名以及公网服务器的话可以贡献一下空闲的流量,没有公网服务器和域名也可以在局域网下用ip玩一下。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
要在 Windows搭建一个支持上传和下载文件的文件服务器,可以使用 Nginx 和一些插件来实现。以下是步骤: 1. 下载 Nginx for Windows,可以从官网下载:http://nginx.org/en/download.html 2. 解压缩下载的 Nginx 文件到某个目录下,例如 C:\nginx。 3. 在 C:\nginx\conf 目录下创建一个名为 nginx.conf 的文件,并在其中添加以下配置: ``` worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; location / { root C:/nginx/html; index index.html index.htm; autoindex on; } location /upload { client_max_body_size 100m; alias C:/nginx/upload/; autoindex on; dav_methods PUT DELETE MKCOL COPY MOVE; dav_access user:rw group:rw all:r; } } } ``` 这个配置文件中定义了一个 http 服务,监听 80 端口,其中 /upload 路径是用来上传文件的,其它路径是用来下载文件的。注意修改 root 和 alias 的路径为你自己的路径。 4. 在 C:\nginx\html 目录下创建一个名为 index.html 的文件,用于测试下载文件是否成功。 5. 在 C:\nginx\upload 目录下创建一个名为 index.html 的文件,用于测试上传文件是否成功。 6. 启动 Nginx,打开命令行窗口,切换到 C:\nginx 目录下,执行命令:nginx.exe。 7. 打开浏览器,访问 http://localhost/,应该可以看到 index.html 页面,用于测试下载文件是否成功。 8. 打开浏览器,访问 http://localhost/upload/,应该可以看到 index.html 页面,用于测试上传文件是否成功。 现在你的文件服务器已经搭建好了,可以用来上传和下载文件了。上传文件时,可以使用 PUT 方法,例如使用 curl 命令上传文件: ``` curl -T file.txt http://localhost/upload/ ``` 下载文件时,可以使用 GET 方法,例如使用浏览器访问 http://localhost/file.txt。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

昵称系统有问题

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值