安装环境 ,Mac版本 : 10.13.5
在装的nginx版本为1.13.12
安装命令见:https://blog.csdn.net/zjuwwj/article/details/72773704
如果你输入http://localhost:8080后能看到nginx配置的首页那说明OK。
或nginx -v看下版本号。都能确保装上.
下面是在挂装rtmp模块时出现的问题处理。
安装命令见:https://blog.csdn.net/leonpengweicn/article/details/44917943
安装tap时:brew tap homebrew/nginx 报was deprecated.
报下面这个错
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> Updated Formulae
abyss docker2aci libhttpseverywhere subversion
amqp-cpp emscripten mypy tup
chronograf grpc packmol znapzend
dnscrypt-proxy influxdb rancher-cli
Error: homebrew/nginx was deprecated. This tap is now empty as all its formulae were migrated.
并不那么顺利,根查原因是因为homebrew/nginx的git路径变了。因此后面找到一个denji/nginx的。
把命令改为 brew tap denji/nginx
fsh-mac--00-24-D6-72-E4-6A:~ fengsh$ brew tap denji/nginx
Updating Homebrew...
==> Tapping denji/nginx
Cloning into '/usr/local/Homebrew/Library/Taps/denji/homebrew-nginx'...
remote: Counting objects: 72, done.
remote: Compressing objects: 100% (72/72), done.
remote: Total 72 (delta 1), reused 28 (delta 0), pack-reused 0
Unpacking objects: 100% (72/72), done.
Tapped 62 formulae (162 files, 130.2KB)
装好这个本以为就可以直接装rtmp模块了。
直接装rtmp命令 : brew install nginx-full --with-rtmp-module
fsh-mac--00-24-D6-72-E4-6A:~ fengsh$ brew install nginx-full --with-rtmp-module
==> Installing nginx-full from denji/nginx
Error: Cannot install denji/nginx/nginx-full because conflicting formulae are installed.
nginx: because nginx-full symlink with the name for compatibility with nginx
Please `brew unlink nginx` before continuing.
Unlinking removes a formula's symlinks from /usr/local. You can
link the formula again after the install finishes. You can --force this
install, but the build may fail or cause obscure side-effects in the
resulting software.
又出问题了,denji的git下没有nginx-full?详细看错误有一句 please 'brew unlink nginx ' before continuing.
因此在执行装rtmp时先执行 brew unlink nginx 再来安装,最后成功了。
fsh-mac--00-24-D6-72-E4-6A:~ fengsh$ brew unlink nginx
Unlinking /usr/local/Cellar/nginx/1.13.12... 2 symlinks removed
fsh-mac--00-24-D6-72-E4-6A:~ fengsh$ brew install nginx-full --with-rtmp-module
Updating Homebrew...
==> Installing nginx-full from denji/nginx
==> Installing dependencies for denji/nginx/nginx-full: rtmp-nginx-module
==> Installing denji/nginx/nginx-full dependency: rtmp-nginx-module
==> Downloading https://github.com/sergey-dryabzhinsky/nginx-rtmp-module/archive
==> Downloading from https://codeload.github.com/sergey-dryabzhinsky/nginx-rtmp-
######################################################################## 100.0%
==> Downloading https://github.com/sergey-dryabzhinsky/nginx-rtmp-module/compare
######################################################################## 100.0%
==> Patching
==> Applying v1.1.7.10...d25c56f.diff
patching file .gitignore
patching file README.md
patching file config
patching file dash/ngx_rtmp_dash_module.c
patching file doc/README.md
patching file doc/directives.md
patching file hls/ngx_rtmp_hls_module.c
patching file hls/ngx_rtmp_mpegts.c
patching file hls/ngx_rtmp_mpegts.h
patching file hls/ngx_rtmp_mpegts_crc.c
patching file hls/ngx_rtmp_mpegts_crc.h
patching file ngx_rtmp.c
patching file ngx_rtmp_auto_push_module.c
patching file ngx_rtmp_cmd_module.h
patching file ngx_rtmp_codec_module.c
patching file ngx_rtmp_core_module.c
patching file ngx_rtmp_exec_module.c
patching file ngx_rtmp_handshake.c
patching file ngx_rtmp_live_module.c
patching file ngx_rtmp_live_module.h
patching file ngx_rtmp_netcall_module.c
patching file ngx_rtmp_notify_module.c
patching file ngx_rtmp_record_module.c
patching file ngx_rtmp_record_module.h
patching file ngx_rtmp_shared.c
patching file ngx_rtmp_version.h
配置文件 open /usr/local/etc/nginx 下的nginx.conf
- #user nobody;
- worker_processes 1;
- events {
- worker_connections 1024;
- }
- http {
- include mime.types;
- default_type application/octet-stream;
- sendfile on;
- keepalive_timeout 65;
- server {
- listen 8080;
- server_name localhost;
- #charset koi8-r;
- #access_log logs/host.access.log main;
- location / {
- root html;
- index index.html index.htm;
- }
- #配置rtmp stat
- location /stat {
- rtmp_stat all;
- rtmp_stat_stylesheet stat.xsl;
- }
- location /stat.xsl {
- root /usr/local/Cellar/rtmp-nginx-module/1.1.7.11-dev_2/share/rtmp-nginx-module;
- }
- location /control {
- rtmp_control all;
- }
- #HLS配置开始,这个配置为了`客户端`能够以http协议获取HLS的拉流
- location /hls {
- # Serve HLS fragments
- types {
- application/vnd.apple.mpegurl m3u8;
- video/mp2t ts;
- }
- root html;
- add_header Cache-Control no-cache;
- }
- #HLS配置结束
- #error_page 404 /404.html;
- # redirect server error pages to the static page /50x.html
- #
- error_page 500 502 503 504 /50x.html;
- location = /50x.html {
- root html;
- }
- }
- include servers/*;
- }
- rtmp {
- server {
- listen 1935;
- ping 30s;
- notify_method get;
- application myapp {
- live on;
- record off;
- max_connections 1024;
- }
- #增加对HLS支持开始
- application hls {
- live on;
- hls on;
- hls_path /usr/local/var/www/hls;
- hls_fragment 5s;
- }
- #增加对HLS支持结束
- }
- }