GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren und konfigurieren Sie Nginx von der Quelle unter Linux

Bevor wir verstehen, was nginx ist, sollten wir wissen, wie man nginx ausspricht.

Es ist nicht N G I N X. nginx wird als „Engine X“ ausgesprochen.

nginx ist die Kurzform, nachdem Sie beide e aus „Engine X“ entfernt haben.

nginx ist ein Open-Source-Webserver, der Apache ähnelt, aber sehr leicht ist. nginx ist sowohl ein Webserver als auch ein Reverse-Proxy-Server.

Im Folgenden sind einige der Funktionen von nginx aufgeführt:

  • Es bedient statische und Indexdateien
  • Reverse-Proxy mit Caching
  • Unterstützt SSL
  • Einfacher Lastenausgleich mit Fehlertoleranz
  • Sowohl namensbasierte als auch IP-basierte virtuelle Server können konfiguriert werden
  • Basis-HTTP-Authentifizierung
  • Unterstützt das Rewrite-Modul
  • Unterstützt gzip, XSLT, SSI und Bildgrößenanpassungsfilter
  • Alle Hauptfunktionen des Mail-Proxy-Servers werden unterstützt
  • und vieles mehr...

Dies ist Teil einer fortlaufenden Artikelserie über nginx.

Beginnen wir mit der Installation von nginx und bringen es zum Laufen, was nur 5 Minuten dauert.

1. Laden Sie nginx herunter

Laden Sie nginx von hier herunter oder verwenden Sie wget wie unten gezeigt. Die aktuelle stabile Version ist nginx 1.0.5

cd
wget http://nginx.org/download/nginx-1.0.5.tar.gz
tar xvfz nginx-1.0.5.tar.gz
cd nginx-1.0.5

2. Installieren Sie nginx

Es gibt viele Optionen, die Sie an ./configure übergeben können. Gehen Sie wie folgt vor, um die Liste aller Konfigurationsoptionen zu identifizieren.

./configure --help

Im Folgenden sind einige der HTTP-Module aufgeführt, die automatisch aktiviert werden. Wenn Sie sie deaktivieren müssen, sollten Sie „–ohne-http_[Modulname]“ an die Option ./configure übergeben. Um beispielsweise „proxy_module“ zu deaktivieren, sollten Sie Folgendes tun:./configure – without-http_proxy_module.

  • charset_module – HTTP-Zeichensatzmodul
  • gzip_module – HTTP gzip-Modul zur Komprimierung
  • ssi_module – Serverseitige Include-Module
  • auth_basic_module – HTTP Basic-Authentifizierungsmodule.
  • autoindex_module – Automatischer Index
  • rewrite_module – HTTP-Umschreibung, die Umschreibungsregeln unterstützt
  • proxy_module – HTTP-Reverse-Proxy-Modul
  • fastcgi_module – Unterstützung für fastcgi
  • memcached_module – Memcached-Modul für nginx
  • ..

Im Folgenden sind einige der httpd-Module aufgeführt, die nicht automatisch aktiviert werden. Wenn Sie sie aktivieren müssen, sollten Sie „–with-http_[Modulname]“ an die Option ./configure übergeben. Um beispielsweise SSL in nginx zu aktivieren, sollten Sie „./configure –with-http_ssl_module“ ausführen.

  • ssl_module – Unterstützung für das Secure Socket Layer (SSL)-Modul
  • xslt_module – Unterstützung für das XSLT-Modul (Extensible Stylesheet Language Transformations)
  • perl_module – Unterstützung für Perl
  • ..

Installieren Sie zunächst nginx mit den Standardkonfigurationsoptionen, indem Sie ./configure wie unten gezeigt ausführen.

./configure
make
make install

Während ./configure erhalten Sie möglicherweise den Fehler „./configure:error:the HTTP rewrite module require the PCRE library.“ Fehlermeldung über fehlende PCRE-Bibliothek, die vom nginx-HTTP-Rewrite-Modul benötigt wird.

Um das Problem zu lösen, installieren Sie entweder die Pakete „pcre“ und „pcre-devel“ auf Ihrem Linux oder deaktivieren Sie das Rewrite-Modul, indem Sie „./configure – without-http_rewrite_module“

ausführen

nginx wird unter /usr/local/nginx installiert, wie in der ./configure-Ausgabe gezeigt.

Configuration summary
  + using system PCRE library
  + OpenSSL library is not used
  + md5: using system crypto library
  + sha1: using system crypto library
  + using system zlib library

  nginx path prefix: "/usr/local/nginx"
  nginx binary file: "/usr/local/nginx/sbin/nginx"
  nginx configuration prefix: "/usr/local/nginx/conf"
  nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
  nginx pid file: "/usr/local/nginx/logs/nginx.pid"
  nginx error log file: "/usr/local/nginx/logs/error.log"
  nginx http access log file: "/usr/local/nginx/logs/access.log"
  nginx http client request body temporary files: "client_body_temp"
  nginx http proxy temporary files: "proxy_temp"
  nginx http fastcgi temporary files: "fastcgi_temp"
  nginx http uwsgi temporary files: "uwsgi_temp"
  nginx http scgi temporary files: "scgi_temp"

3. Ändern Sie den standardmäßigen nginx-Abhörport

Nginx ist so konfiguriert, dass es standardmäßig auf Port 80 lauscht. Wenn Sie dies zu Testzwecken auf einer Maschine installieren, auf der bereits ein Apache-Server läuft, sollten Sie den nginx-Listener-Port ändern.

Ähnlich wie bei der httpd.conf-Datei von Apache befindet sich bei nginx die Datei nginx.conf unter /usr/local/nginx/conf.

Ändern Sie im Serverabschnitt von nginx.conf den Port 80 auf 8081.

# vi /usr/local/nginx/conf/nginx.conf
    server {
        listen       8081;
        server_name  localhost;

4. Starten Sie den Nginx-Server

Die ausführbare nginx-Datei befindet sich im Verzeichnis /usr/local/nginx/sbin. Rufen Sie einfach diese ausführbare Datei auf, um den Nginx-Server zu starten.

cd /usr/local/nginx/sbin
./nginx

Sobald Sie dies starten, sehen Sie den „Master-Prozess“ und den „Worker-Prozess“ von nginx, wenn Sie ps.

ausführen
# ps -ef | grep -i nginx
root     18596 13:16 nginx: master process ./nginx
nobody   18597 13:16 nginx: worker process

Nachdem Sie den nginx-Server gestartet haben, gehen Sie zu http://your-ip-address/ (oder http://your-ip-address:8081, wenn Sie die Listen-Direktive in nginx.conf geändert haben), Sie sollten die Standardeinstellung sehen nginx index.html, die „Willkommen bei nginx!“ heißen sollte

5. Beenden Sie den Nginx-Server

Gehen Sie wie folgt vor, um den Nginx-Server zu stoppen.

cd /usr/local/nginx/sbin
./nginx -s stop

Gehen Sie wie folgt vor, um die aktuelle Version von nginx anzuzeigen:

# ./nginx -v
nginx: nginx version: nginx/1.0.5

Sehen Sie sich zum Debuggen von Problemen die Dateien error.log und access.log an, die sich unter /usr/local/nginx/logs

befinden
# ls /usr/local/nginx/logs/
access.log
error.log
nginx.pid

Linux
  1. So installieren Sie ein Programm von der Quelle unter Linux

  2. So installieren und konfigurieren Sie EMC PowerPath unter Linux

  3. So kompilieren und installieren Sie Software aus dem Quellcode unter Linux

  4. So installieren Sie MongoDB von der Quelle (und mit YUM) unter Linux

  5. Wie man TBB von der Quelle unter Linux installiert und zum Laufen bringt

So installieren und konfigurieren Sie AnyDesk auf einem Linux-System

So installieren und konfigurieren Sie Django auf einem Linux-System

So installieren und konfigurieren Sie PrestaShop auf einem Linux-System

So installieren und konfigurieren Sie Elasticsearch auf einem Linux-System

So installieren und konfigurieren Sie Slack auf Linux-Distributionen

So installieren und konfigurieren Sie Perf in Linux-Distributionen