CentOS 7にApacheをインストールする方法
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
RTMPはライブコンテンツの配信に最適です。RTMPをFFmpegとペアにすると、ストリームをさまざまな品質に変換できます。Vultrは高速で専用のCPUパフォーマンスを提供するため、これらのアプリケーションに最適です。Vultrのグローバルネットワークでは、遅延を最小限に抑えて高品質のライブコンテンツを配信することもできます。始めましょう!
ソースからNginxおよびNginx-RTMPをコンパイルするために必要なツールをインストールします。
sudo yum install pcre pcre-devel openssl openssl-devel zlib zlib-devel -y
作業ディレクトリを作成し、それに切り替えます。
mkdir ~/working
cd ~/working
NginxおよびNginx-RTMPソースをダウンロードします。
wget http://nginx.org/download/nginx-1.9.7.tar.gz
wget https://github.com/arut/nginx-rtmp-module/archive/master.zip
unzipパッケージをインストールします。
sudo yum install unzip
NginxおよびNginx-RTMPソースを抽出します。
tar -xvf nginx-1.9.7.tar.gz
unzip v1.2.1.zip
Nginxディレクトリに切り替えます。
cd nginx-1.9.7
Nginxにコンパイルするモジュールを追加します。Nginx-RTMPが含まれています。
./configure --add-module=../nginx-rtmp-module-1.2.1/
Nginx-RTMPを使用してNginxをコンパイルおよびインストールします。
make
sudo make install
Nginx用のSystemDユニットファイルを作成します。
sudo nano /usr/lib/systemd/system/nginx.service
ファイルに次の内容を入力します。
[Unit]
Description=nginx - high performance web server
Documentation=https://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t -c /etc/nginx/nginx.conf
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
[Install]
WantedBy=multi-user.target
Nginxサービスを開始して有効にします。
sudo systemctl start nginx.service
ブート時にNginxサービスを自動的に開始するようSystemDに指示します。
systemctl enable nginx.service
epel-release
システムをインストールして更新します。
sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now
Nuxリポジトリをインストールします。
sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
FFmpegとその開発パッケージをインストールします。
sudo yum install ffmpeg ffmpeg-devel -y
Nginx構成ファイルを開きます。
sudo nano /usr/local/nginx/conf/nginx.conf
以下を構成に追加します。
rtmp {
server {
listen 1935;
chunk_size 4096;
application live {
live on;
record off;
exec ffmpeg -i rtmp://localhost/live/$name -threads 1 -c:v libx264 -profile:v baseline -b:v 350K -s 640x360 -f flv -c:a aac -ac 1 -strict -2 -b:a 56k rtmp://localhost/live360p/$name;
}
application live360p {
live on;
record off;
}
}
}
その構成テキストを追加した後、ビデオのビットレート、オーディオのビットレート、解像度などの設定をカスタマイズできます。これらの変更は、低品質のストリームにのみ適用されます。さらに品質を追加するには、exec FFmpeg行をコピーして貼り付け、設定を変更します。また、新しいアプリケーションを作成する必要があります。これを行うには、含まれているlive360サンプルをコピーして貼り付けます。新しいアプリケーションのアドレスでexec FFmpeg行を更新することを忘れないでください。これを行うには、exec FFmpeg行の最終RTMPアドレスを変更します。
注: 後-b:v
に値を変更すると、ビデオのビットレートが変更されます。これはキロビット/秒で測定されます。後に値-b:a
を変更すると、オーディオのビットレートが変更されます。これはキロビット/秒で測定されます。後に値-s
を変更すると、解像度が変更されます。
CTRL+ を押してファイルを保存しますX。
Nginxを再起動します。
sudo service nginx restart
注: 最高のパフォーマンスを得るには、変換される各ストリームに独自のCPUコアが必要です。たとえば、720Pストリームから360Pと480Pの2つの品質を作成する場合、少なくとも2つのCPUコアを持つVultrインスタンスを使用する必要があります。
ファイアウォールを使用している場合TCP 1935
は、許可されていることを確認する必要があります。
現在の構成では、誰でもサーバーにストリーミングできます。これを修正するには、特定のIPアドレスに公開権限のみを付与します。Nginx構成を開きます。
sudo nano /usr/local/nginx/conf/nginx.conf
次の行を探します。
live on;
record off;
上記の行の各セットに以下を追加します。0.0.0.0
実際のIPアドレスに変更します。
allow publish 127.0.0.1;
allow publish 0.0.0.0;
deny publish all;
構成は次のようになります。
rtmp {
server {
listen 1935;
chunk_size 4096;
application live {
live on;
record off;
allow publish 127.0.0.1;
allow publish 0.0.0.0;
deny publish all;
exec ffmpeg -i rtmp://localhost/live/$name -threads 1 -c:v libx264 -profile:v baseline -b:v 350K -s 640x360 -f flv -c:a aac -ac 1 -strict -2 -b:a 56k rtmp://localhost/live360p/$name;
}
application live360p {
live on;
record off;
allow publish 127.0.0.1;
allow publish 0.0.0.0;
deny publish all;
}
}
}
CTRL+ を押してファイルを保存しますX。
Nginxを再起動します。
sudo service nginx restart
ストリーミングアプリケーションには通常、接続情報用の2つのフィールドがあります。最初のフィールドは通常サーバー情報用で、2番目のフィールドは通常ストリーム名またはキー用です。各フィールドに入力する必要のある情報がリストされています。ストリーム名またはキーは任意に設定できます。
Field 1: rtmp://your.vultr.ip/live/
Field 2: stream-key-you-set
ストリームを表示するには、RTMPをサポートするプレーヤーで次のリンクを開きます。
rtmp://your.vultr.ip/live/stream-key-you-set
rtmp://your.vultr.ip/live360p/stream-key-you-set
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。
CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。
サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。
CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。
Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。
CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。
WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。
FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。
Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。
ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。