
У меня возникли проблемы с запуском NGINX с модулем RTMP, когда блок сервера RTMP используется в файле внутри sites-available
(символическая ссылка на sites-enabled
). Все файлы конфигурации NGINX находятся в /etc/nginx/
.
Если я использую нижеприведенный блок сервера RTMP непосредственно в nginx.conf
, сервер запускается отлично. Однако, как только я удаляю комментарий из строки include /etc/nginx/sites-enabled/*;
в nginx.conf
, systemctl status nginx.service
возвращается с"nginx: [emerg] "rtmp" directive is not allowed here in /etc/nginx/sites-enabled/livestream:1
rtmp {
server {
listen 1935;
chunk_size;
application obs_output {
live on:
record off;
}
}
}
Это два руководства, которым я следовал при установке NGINX и модуля RTMP.
https://helpdeskgeek.com/linux-tips/create-your-own-live-video-streaming-server-with-linux/
https://www.scaleway.com/en/docs/setup-rtmp-streaming-server/
Есть идеи, что здесь происходит?
Спасибо заранее
решение1
Я не верю, что можно объявить rtmp {}
блок изнутри /etc/nginx/sites-enabled
каталога.
По умолчанию /etc/nginx/sites-enabled
каталог включен в существующий http {}
блок. Вы можете проверить это, посмотрев на /etc/nginx/nginx.conf
. Вы не можете иметь rtmp
блок внутри http
блока, они должны быть отделены друг от друга, поскольку они объявлены на одном уровне.
Единственное nginx
include
, что может подойти вашей конфигурации, находится внутри /etc/nginx/modules-enabled
каталога.