Ich bin auf ein sehr peinliches Problem gestoßen, als ich Nginx und das Nginx-RTMP-Modul zum Erstellen eines Streaming-Medienservers verwendet habe. Dies war der erste Ansatz, den ich beim Hinzufügen des Nginx-RTMP-Moduls zu Nginx gewählt habe. Laden Sie dann den Quellcode von Nginx und Nginx-RTMP-Modul herunter, kompilieren Sie ihn erneut und installieren Sie ihn. Nach der Neuinstallation habe ich den Streaming-Media-Server getestet und es war normal, aber dann kam das Problem, weil ich einige WEB-Projekte im LUMP bereitgestellt hatte Nachdem Nginx neu installiert wurde, müssen diese Projekte erneut bereitgestellt werden. Ich habe also begonnen, diese WEB-Projekte erneut bereitzustellen, aber das Ergebnis hat mich zum Weinen gebracht, weil sich die Struktur des Nginx-Verzeichnisses stark verändert hat. Daher konnte ich das ursprüngliche WEB-Projekt nicht konfigurieren. Danach habe ich lange nach vielen Lösungen im Internet gesucht, aber die meisten dieser Lösungen konzentrierten sich auf das Kompilieren und Installieren von Nginx und The Push-Pull Als ich den Beitrag später durchstöberte, sah ich, dass jemand sagte, dass das Ersetzen der ursprünglichen Nginx-ausführbaren Datei durch die von mir kompilierte Nginx-ausführbare Datei das Problem lösen könnte, also habe ich es sofort versucht Es hat sich herausgestellt, dass es wirklich funktioniert! Jetzt kann Nginx gleichzeitig Streaming-Mediendienste ausführen und WEB-Projekte bereitstellen und das Beste aus beiden Welten nutzen.
Lassen Sie mich kurz meinen Betriebsprozess vorstellen, in der Hoffnung, anderen zu helfen Wenn Sie auf das gleiche Problem stoßen, bringen Sie bitte Hilfe mit (meine Konfigurationsumgebung: Ubuntu Server 16.04 + nginx1.10.0 + nginx-rtmp-module-master) 1. Installieren Sie zuerst nginx mit apt -get. Derzeit wird die auf diese Weise installierte Versionsnummer von Nginx 1.10.0 verwendet.
1 sudo apt-get update2 sudo apt-get install nginx
1 cd softwares/2 sudo mkdir nginx
1 cd nginx/
Methode a: Ausführen apt-get source nginx-Befehl im Terminal, um den Quellcode der entsprechenden Version zu erhalten
1 sudo apt-get source nginx
Methode b: Suchen Sie die entsprechende Version auf der offiziellen Website von Nginx und laden Sie sie herunter Auf diese Weise müssen Sie es manuell dekomprimieren:
1 sudo wget nginx.org/download/nginx-1.10.0.tar.gz
Da nginx-rtmp-module Open Source auf GitHub ist, kann es auch direkt von der GitHub-Adresse bezogen werden:
1 sudo tar zxvf nginx-1.10.0.tar.gz
1 sudo wget github.com/arut/nginx-rtmp-module/archive/master.zip
8. Sehen Sie sich die aktuellen Nginx-Konfigurationsinformationen an Speichern Sie die aktuellen Konfigurationsinformationen vollständig an einem Ort. Wenn Sie den Nginx-Quellcode später kompilieren, müssen Sie ihn basierend auf den aktuellen Konfigurationsinformationen konfigurieren In der Befehlszeile wird nur die Versionsnummer von Nginx in Kleinbuchstaben angezeigt. Meine aktuellen Nginx-Konfigurationsinformationen lauten wie folgt:
1 sudo unzip master.zip
9. Konfigurieren Sie den Nginx-Quellcode Kompilierungsinformationen und nginx-rtmp-module zu nginx hinzufügen
1 cd nginx-1.10.0/
Beachten Sie, dass diese Befehlszeile tatsächlich wie folgt zusammengesetzt ist: sudo ./configure
1 nginx -V
--with-cc-opt='-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads
1 sudo ./configure --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads --add-module=../nginx-rtmp-module-master
13. Überprüfen Sie die Nginx-Konfigurationsinformationen erneut.
1 sudo make
Sie Sie können sehen, dass das Modul nginx-rtmp-module zu nginx hinzugefügt wurde.
1 sudo nginx /usr/sbin
Ich habe Push- und Pull-Streaming versucht und die Funktion war normal. Ich habe das ursprüngliche WEB-Projekt erneut ausgeführt und es war auch normal.
Lassen Sie mich abschließend erklären, warum Sie Nginx über apt installieren müssen. Zuerst abrufen und dann kompilieren und ersetzen. Der Grund besteht darin, die Bereitstellung von WEB-Projekten in der LUMP-Umgebung zu erleichtern. Wenn Sie Nginx nicht zuerst über apt-get installieren, laden Sie den Quellcode direkt herunter, um ihn zu kompilieren und zu installieren Das Verzeichnis ist unvollständig und es wird schwierig sein, das WEB-Projekt bereitzustellen (die Bereitstellung kann auch durch bestimmte Vorgänge erreicht werden, Sie müssen jedoch noch Zeit damit verbringen, Nginx für bestimmte Vorgänge zu studieren, ich empfehle die Installation). nginx über apt-get. Die Schritte sind einfach und sorgenfrei!
Das obige ist der detaillierte Inhalt vonVerwenden Sie nginx und nginx-rtmp-module, um einen Streaming-Media-Server zu erstellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!