1. Nginx-Dienstgrundlage Nginx (Engine x) wurde speziell zur Leistungsoptimierung entwickelt. Seine Merkmale sind geringer Speicherbedarf, Stabilität und geringer Verbrauch von Systemressourcen sowie hohe Verarbeitungsleistung für gleichzeitige Verbindungen (ein einzelner physischer Server kann 5000 gleichzeitige Anfragen unterstützen). Tatsächlich ist die Parallelitätsfähigkeit von nginx besser als bei anderen Webservern desselben Typs. Zu den Website-Benutzern, die nginx auf dem chinesischen Festland verwenden, gehören: Baidu, JD.com, Sina, NetEase, Tencent, Taobao usw. IMAP/POP3/SMTP-Dienste werden ebenfalls bereitgestellt. Vorteile von Nginx: *** Hohe Anzahl gleichzeitiger Verbindungen möglich** Die folgende Abbildung ist ein Leistungsvergleich von Nginx, Apache und lighttpd: Oben wurde bereits so viel über die leistungsstarke Leistung von Nginx gesagt. Wie erstellt man also einen Nginx-Website-Server basierend auf CentOS 7 (einschließlich der Konfiguration eines virtuellen Webhosts)? Lassen Sie uns die Konfiguration von Nginx und seine Anwendung auf virtuellen Maschinen weiter erläutern: 2. Vorbereitung: 1. Ein CentOS 7-Server; 2. Eine CentOS 7-Systemfestplatte; 3. Das benötigte Softwarepaket finden Sie unter https://www.jb51.net/softs/25646.html 4. Sie können es auch von der offiziellen Website http://www.nginx.org/ herunterladen 3. Beginnen Sie mit dem Aufbau der Nginx-Website (mounten Sie die Systemfestplatte und installieren Sie die erforderlichen Abhängigkeitspakete): 1. Installieren Sie die erforderlichen Abhängigkeitspakete, die alle auf der Systemfestplatte bereitgestellt werden: 2. Kompilieren, installieren und konfigurieren Sie Nginx [root@localhost media]# useradd -M -s /sbin/nologin nginx #Systembenutzer erstellen [root@localhost media]# tar zxf nginx-1.12.0.tar.gz -C /usr/src #Entpacken [root@localhost media]# cd /usr/src/nginx-1.12.0/ [root@localhost nginx-1.12.0]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module && machen && machen installieren #Nginx kompilieren und installieren [root@localhost ~]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ #Erstellen Sie eine Linkdatei für das Hauptprogramm. Um das Starten, Stoppen, Neuladen und andere Vorgänge des Nginx-Dienstes komfortabler zu gestalten, können Sie das Nginx-Dienstskript bearbeiten. Das Skript wird wie folgt kompiliert: [root@localhost ~]# vim /etc/init.d/nginx #Serviceskript bearbeiten#!/bin/bash # chkconfig: -99 20 PROG="/usr/local/nginx/sbin/nginx" PIDF="/usr/local/nginx/logs/nginx.pid" Fall "$1" in Start) $PROG ;; stoppen) töten -s BEENDEN $(Katze $PIDF) ;; Neustart) $0 Stopp $0 Start ;; neu laden töten -s HUP $(Katze $PIDF) ;; *) echo "USAGE:$0 {start | stop | neu starten | neu laden}" Ausfahrt 1 esac Ausfahrt 0 [root@localhost ~]# chmod +x /etc/init.d/nginx #Ausführungsberechtigung hinzufügen[root@localhost ~]# chkconfig --add nginx #Als Systemdienst hinzufügen[root@localhost ~]# systemctl start nginx #Starten Sie den Nginx-Dienst, um die normale Ausführung des Skripts zu bestätigen[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf #Passen Sie die Konfigurationsdatei an, um den Webdienst zu optimieren.............. worker_processes 2; #Anzahl der Arbeitsprozesse #error_log logs/error.log; #Speicherort der Fehlerprotokolldatei #error_log logs/error.log Hinweis; #error_log Protokolle/error.log-Info; #pid logs/nginx.pid; #PID-Dateispeicherortereignisse { use epoll; #Fügen Sie diese Zeile sogar in { } hinzu, um die Leistung zu verbessern worker_connections 4096; Jeder Prozess verarbeitet 4096 Verbindungen} Die oben genannten Optimierungen werden basierend auf der globalen Konfiguration implementiert. Die Bedeutung der einzelnen Optimierungen ist wie folgt:
3. Erstellen Sie einen virtuellen Webhost basierend auf dem Domänennamen: 1. HTTP-Konfiguration: Die Konfigurationsdatei von Nginx verwendet das Trennzeichen-Tag „http { }“, um den HTTP-Server festzulegen, einschließlich Zugriffsprotokollen, HTTP-Ports, Webverzeichnis, Standardzeichensatz, Verbindungspersistenz, virtuellen Webhosts, PHP-Parsing und anderen globalen Website-Einstellungen, von denen die meisten im untergeordneten Trennzeichen-Tag „server { }“ enthalten sind. „Server {}“ steht für eine bestimmte Website-Einstellung. [root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf http { mime.types einschließen; Standardtyp Anwendung/Oktett-Stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; #Entfernen Sie das Zeichen "#" am Anfang der obigen drei Zeilen access_log logs/access.log main; #Speicherort des Zugriffsprotokolls sendfile on; Aktivieren Sie den effizienten Dateiübertragungsmodus #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #Verbindungs-Keep-Alive-Timeout #gzip ein; Server { listen 80; #Abhörport des Webservers, Sie können das Format „IP-Adresse:Port“ verwenden Servername www.test1.com; #Domänenname der Website Zeichensatz UTF-8; #Standardzeichensatz der Website, Sie müssen das führende „#“-Zeichen entfernen access_log logs/test1.access.log main; #Name der Zugriffsprotokolldatei location /status { #Fügen Sie location /status hinzu, um Statusstatistiken zu aktivieren, der Zugriffsort ist /status stub_status on; #Statusstatistikfunktion aktivieren access_log off; #Protokollierung für diesen Standort deaktivieren} Standort / { root /var/www/test1; #Stammverzeichnis der Website index index.html index.php; #Standard-Homepage, ändern Sie zu index.php, um PHP-Webseiten zu unterstützen} ; .......................... error_page 500 502 503 504 /50x.html; #Interne Fehler-Feedbackseite location = /50x.html { #Fehlerseitenkonfiguration root html; } } } Die obige Konfiguration erstellt nur einen Website-Dienst. Wenn Sie mehrere ausführen möchten, können Sie die am Ende der Konfigurationsdatei bereitgestellte Vorlage kopieren und in die Konfiguration „server{ }“ einfügen. Da die Konfigurationsdatei zu viele „{ }“ enthält, müssen Sie sie zur Vermeidung von Fehlern wie folgt in den ursprünglichen „server{ }“ kopieren: Server { hören Sie 80; Servername www.test2.com; Zeichensatz UTF-8; access_log Protokolle/test2.access.log Haupt; Standort /Status { stub_status ein; Zugriff_Abmeldung; } Standort / { Wurzel /var/www/test2; Index Index.html Index.php; } } Server { hören Sie 80; Servername www.test1.com; .................................. An diesem Punkt wurde der virtuelle Host eingerichtet und der Dienst muss neu gestartet werden, damit er wirksam wird und der normale Betrieb des Webservers überprüft werden kann (DNS muss von Ihnen selbst eingerichtet werden). 4. Zugriffsstatusstatistiken Virtuelle Hostanwendung [root@localhost ~]# nginx -t #Verwenden Sie diesen Befehl, um die Konfigurationsdatei zu überprüfen, bevor Sie den Dienst neu starten. #Wenn die Konfigurationsdatei einen Fehler enthält, wird die Zeile angezeigt, in der der Fehler auftritt. #Wenn alles richtig ist, wird OK angezeigt. Wenn ein Fehler auftritt, wird beim Neustart des Dienstes kein Fehler gemeldet, aber die Konfigurationsdatei wird nicht wirksam. nginx: [emerg] unerwartetes ";" in /usr/local/nginx/conf/nginx.conf:44 #Zeigt an, dass in Zeile 44 ein Fehler vorliegt nginx: Test der Konfigurationsdatei /usr/local/nginx/conf/nginx.conf fehlgeschlagen [root@localhost ~]# nginx -t #Das Folgende zeigt „ok“ an, was darauf hinweist, dass kein Problem vorliegt. nginx: die Syntax der Konfigurationsdatei /usr/local/nginx/conf/nginx.conf ist in Ordnung nginx: Test der Konfigurationsdatei /usr/local/nginx/conf/nginx.conf ist erfolgreich # Bereiten Sie als Nächstes das Website-Verzeichnis und die Testdateien vor, erstellen Sie Stammverzeichnisse für die beiden virtuellen Webhosts und bereiten Sie die Test-Homepage vor, um die Unterscheidung während des Tests zu erleichtern [root@localhost named]# mkdir -p /var/www/test1 [root@localhost benannt]# mkdir -p /var/www/test2 [root@localhost benannt]# echo "www.test1.com" > /var/www/test1/index.html [root@localhost benannt]# echo "www.test2.com" > /var/www/test2/index.html Client-Authentifizierung: ① Besuchen Sie die Homepage von www.test1.com: ② Besuchen Sie die Statusstatistikseite von www.test1.com: Das Obige bedeutet Folgendes: Aktive Verbindungen bedeutet, dass die aktuelle Anzahl aktiver Verbindungen 2 beträgt; Server akzeptiert verarbeitete Anfragen zeigt die verarbeiteten Verbindungsinformationen an. Die drei Zahlen stehen für 3 verarbeitete Verbindungen, 3 erfolgreiche Handshakes und 6 verarbeitete Anfragen. ① Besuchen Sie die Homepage von www.test2.com: ② Besuchen Sie die Statusstatistikseite von www.test2.com: Das Obige ist die Anwendung von Zugriffsstatusstatistiken und virtuellen Hosts Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Zusammenfassung der Tipps zum Festlegen der maximalen Anzahl von Verbindungen in MySQL
>>: React+Amap ermittelt Breiten- und Längengrad in Echtzeit und lokalisiert die Adresse
In diesem Artikel erfahren Sie, wie Sie MySQL 8.0...
Bei der Flugbahnwiedergabe des WeChat-Applets wer...
Docker virtualisiert eine Brücke auf dem Host-Rec...
wie folgt: docker run -d -p 5000:23 -p 5001:22 --...
Beim Ausführen von yum im Dockerfile oder im Cont...
Inhaltsverzeichnis Vue3-Kapselungsnachrichten-Ein...
1. Online-Installation Derzeit habe ich nur die O...
Deepin 2014 herunterladen und installieren Zum He...
Wir müssen oft die versteckten, transparenten und...
Vorwort Als mein Team das Steuersystemmodul entwi...
Ob MySQL bei der Ausführung von Vorgängen wie Ein...
Die MySQL-Versionsnummer ist 5.7.28. Tabelle A ha...
Inhaltsverzeichnis So stellen Sie den MySQL-Diens...
Inhaltsverzeichnis Vielfältige Einsatzmöglichkeit...
Es gibt drei Typen von regulären Matching-Selekto...