
sites-available
RTMP サーバー ブロックが 内のファイル( にシンボリック リンク)内で使用されている場合に、NGINX と RTMP モジュールを起動する際に問題が発生します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 モジュールをインストールするために従った 2 つのガイドです。
https://helpdeskgeek.com/linux-tips/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
。