Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Analyse von Nginx-Installationsbeispielen unter Linux

Analyse von Nginx-Installationsbeispielen unter Linux

WBOY
WBOYnach vorne
2023-05-22 08:46:051277Durchsuche

Verwenden Sie zur Installation die System-Binärquellenmethode

Im Ubuntu/Debian-System

sudo apt-get install nginx

oder im Redhat/Centos-System

sudo yum install nginx

Diese Methode ist die einfachste und schnellste Methode, aber nicht die beste. Machen wir es Weiter Sprechen Sie über dieses Hauptthema.

Vorteile

  • Alle binären Installationsabhängigkeiten wurden berücksichtigt, Sie müssen sich keine Gedanken über Kompatibilitätsprobleme machen, es kann sofort verwendet werden

  • Nginx-Verbindungskonfiguration, Benutzerberechtigungen müssen nicht sein Behandelt, wir haben dies bereits für Sie geschrieben. Blockiert

  • Machen Sie sich keine Sorgen über Nginx-Bug-Wartungs- und Upgrade-Probleme, holen Sie sich einfach direkt das neueste System

  • Einfache Deinstallation, nur ein Befehl

  • Einfaches Protokoll Wartung, automatisches Abschneiden des Tagesprotokolls, Komprimieren und Speichern neu kompiliert werden

Die Kategoriestruktur ist komplex und die Konfigurationsdatei befindet sich in /etc/, die Bereitstellungsdatei befindet sich in /var/www

    Für den Neustart des Dienstes und die Änderung der Konfiguration sind Root-Berechtigungen erforderlich
  • Die Leistung ist etwas schlechter. Wenn Sie ein Linux-Neuling sind, wird die Verwendung dieser Installationsmethode auf jeden Fall empfohlen. Kompilierungsabhängigkeiten müssen nicht berücksichtigt werden. Sie können sie direkt nach der Installation verwenden. Wenn Ihr Server jedoch in einer Produktionsumgebung verwendet wird und weiterentwickelt und schrittweise verbessert wird, wird diese Methode nicht empfohlen. Module von Drittanbietern können in Zukunft hinzugefügt werden und müssen zu diesem Zeitpunkt kompiliert und installiert werden (siehe unten). Verwenden Sie beim Neustart des Servers nicht den Root-Benutzer, sondern verwenden Sie sudo, um kurzzeitig Root zu erhalten. Wenn Ihr Server zum Bereitstellen einiger statischer Dateien verwendet wird, hauptsächlich zum Erstellen von Webspace, und normalerweise hauptsächlich das FTP-Tool zum Bereitstellen von Dateien verwendet, gibt es auf diese Weise definitiv kein Problem.
  • Kompilieren und installieren
  • Ich werde nicht über die Vor- und Nachteile schreiben, sondern im Grunde einfach das oben Gesagte umkehren. Um mit dieser Methode zu installieren, müssen Sie ein wenig über Linux-Kompilierungskenntnisse verfügen, und nur mäßige Linux-Benutzer können damit umgehen. Ich habe gesehen, dass die meisten Tutorials im Internet die Kompilierungsabhängigkeiten direkt in /usr/local/ installieren. Diese Methode ist nicht gut. Wenn wir diese Abhängigkeiten in Zukunft deinstallieren möchten, wird dies für uns sehr mühsam sein. Sie können es nicht einfach direkt unter der Kategorie löschen. Einige Linux-Distributionen schreiben die Installationsdateien in die Konfigurationsdateien. Wenn sich eine abhängige Version auf andere Software auswirkt, erfahren Sie, wie Sie mit Versionsproblemen umgehen. Wir wollten nur Nginx installieren, aber es verursachte viele Probleme.
  • Vorbereitung der Kompilierungsumgebung

  • Bevor Sie beginnen, stellen Sie sicher, dass Ihr Linux mit gcc, make, wget, g++ und anderer Software vorbereitet ist.

  • Erstellen Sie eine Kategorie zum Speichern heruntergeladener Dateien und geben Sie das Verzeichnis zum Herunterladen der Quelldateien der abhängigen Bibliothek ein.

    Öffnen Sie den Download von OpenSSL, das hauptsächlich für die SSL-Modulverschlüsselung verwendet wird und https unterstützt und Unterstützung für Lokalisierungsanweisungen und reguläre Ausdrücke.
  • wget https://www.openssl.org/source/openssl-1.0.2s.tar.gz
    Parameter-Skript , einschließlich Pfaden zu Quell- und Konfigurationsdateien, Compileroptionen, Methoden zur Verknüpfungsbehandlung und Modullisten. Das Skript erledigt dies, indem es die Makefiles erstellt, die zum Kompilieren des Codes und zur Installation von Nginx Open Source erforderlich sind.
参数 描述
–prefix=98953a78f52873edae60a617ec082494 nginx安装目录,以及有其他配置脚本选项的路径设置的所有相对路径的基本位置。默认值/usr/local/nginx
–sbin-path=7988e5ef09cb060996e437e0d2342881/sbin/nginx
–conf-path=98953a78f52873edae60a617ec082494 nginx配置文件的名称。但是,您可以通过在nginx命令行上使用选项指定其他文件来始终在启动时覆盖此值。默认值:aac119f8a3a563a827b4e4c50481b4e7 conf / nginx.conf-c 2334ac29606bf8a170583e4f7533b1f4
–pid-path=98953a78f52873edae60a617ec082494 nginx.pid文件的名称,用于存储nginx主进程的进程id 。安装后,可以使用nginx配置文件中的pid指令更改文件名的路径。默认值:aac119f8a3a563a827b4e4c50481b4e7 /logs/nginx.pid
–error-log-path=98953a78f52873edae60a617ec082494 error,warn和诊断数据的日志文件的名称。安装后,可以使用nginx配置文件中的error_log指令更改文件名。默认值:aac119f8a3a563a827b4e4c50481b4e7 /logs/error.log
–http-log-path=98953a78f52873edae60a617ec082494 http服务器请求的主日志文件的名称。安装后,始终可以使用nginx配置文件中的access_log指令更改文件名。默认值:aac119f8a3a563a827b4e4c50481b4e7 /logs/access.log
–user=8a11bc632ea32a57b3e3693c7987c420 nginx运行进程的拥有者。安装后,可以使用nginx配置文件中的user指令更改名称。默认:nobody
–group=name nginx运行进程的拥有者用户组。安装后,可以使用nginx配置文件中的user指令更改名称。默认值:–user选项设置的值
–with-pcre=98953a78f52873edae60a617ec082494 pcre库源代码的路径,这是位置指令和rewrite模块中正则表达式支持所必需的
–with-pcre-jit 使用“即时编译”支持(pcre_jit指令)构建pcre库
–with-zlib=98953a78f52873edae60a617ec082494 zlib库的源代码路径,gzip模块需要该路径
–with-http_ssl_modul 启用https支持
–with-http_v2_module 开启 http/2请求支持

还要太多编译参数我就不一一列举,有兴趣的同学可以自己去

参看

编译安装

./configure \
  --with-openssl=../openssl-1.0.2s \
  --with-pcre=../pcre-8.43 \
  --with-zlib=../zlib-1.2.11 \
  --with-pcre-jit --user=admin \
  --prefix=/home/admin/nginx \
  --with-http_ssl_module \
  --with-http_v2_module

输出以下信息,说明依赖没问题

configuration summary
 + using pcre library: ../pcre-8.43
 + using openssl library: ../openssl-1.0.2s
 + using zlib library: ../zlib-1.2.11
 
 nginx path prefix: "/home/admin/nginx"
 nginx binary file: "/home/admin/nginx/sbin/nginx"
 nginx modules path: "/home/admin/nginx/modules"
 nginx configuration prefix: "/home/admin/nginx/conf"
 nginx configuration file: "/home/admin/nginx/conf/nginx.conf"
 nginx pid file: "/home/admin/nginx/logs/nginx.pid"
 nginx error log file: "/home/admin/nginx/logs/error.log"
 nginx http access log file: "/home/admin/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"

编译

make

安装

make install

设置权限

因为linux设置普通用户,不能占用1024一下的端口,直接启动nginx会出现权限不足的错误。将nginx分配给root用户,在分配特殊权限。

sudo chown root nginx
sudo chmod u+s nginx

Das obige ist der detaillierte Inhalt vonAnalyse von Nginx-Installationsbeispielen unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen