Plan: Ich habe es kurz genutzt und das Buch gelesen, um ein umfassendes Verständnis zu erlangen. 1. „Praktisches Nginx: Ein Hochleistungs-Webserver, der Apache ersetzt“ Inhalt: Installation, Konfiguration und Optimierung, PHP FastCGI, JSP, Reverse Proxy, Lastausgleich, Umschreiben, Cache, Moduleinführung Gehen Sie es der Reihe nach durch und konzentrieren Sie sich dabei auf Reverse-Proxy, Lastausgleich, Umschreiben, Cache und Moduleinführung. 2. „Detailliertes Verständnis von Nginx: Modulentwicklung und Architekturanalyse/Tao Hui. – Beijing: Machinery Industry Press, 2013.3“ 978-7-111-41478-0In diesem Buch geht es um die Entwicklung von Erweiterungsmodulen auf Basis von Nginx. Im ersten Teil geht es darum, wie man es nutzt, dann analysiert man die Architektur und spricht darüber, wie man sie entwickelt. „Nginx eignet sich sehr gut für die Entwicklung von Serverprogrammen, die externe Dienste über TCP auf der Transportschicht bereitstellen.“ Lesen Sie den ersten Teil und überfliegen Sie die anderen Teile. 3. „Nginx-HTTP-Server lernen“ Inhalt: Installation, http-Konfiguration, SSI, PHP, Apache neu schreibenEndlich einfach Überprüfen Sie nach einer Weile, ob Auslassungen vorhanden sind, und ergänzen Sie diese. Buch 1: „Praktisches Nginx: ein Hochleistungs-Webserver, der Apache ersetzt“
--- ------- --------13:25 2014-05-18 1. Einführungnginx kann die Epoll- und Kqueue-Netzwerk-IO-Modelle verwenden. ------------------------------------------------13:29 2014-05-18 2. Installation und Konfigurationhttp://www.nginx.net/Hauptversion 1.7, stabile Version 1.6, wählen Sie 1.7. Es sind sowohl Windows- als auch Linux-Versionen erforderlich. Ist es in der apt-Bibliothek verfügbar? Was ist die neueste Version? http://nginx.org/en/download.htmlhttp://nginx.org/download/nginx-1.7.0.tar.gz http://nginx.org/download/nginx-1.7.0.zipSehen Sie sich den Quellcode online an: http://trac.nginx.org /nginx /browser. Getestete Betriebssysteme und PlattformenLinux 2.2 – 3 / i386; Linux 2.6 – 3 / amd64; Windows XP, Windows Server 2003.Meine experimentelle Umgebung: Eine virtuelle Maschine von Ubuntu 14.04 in Windows 2008 Server R2. tar./configure [Verschiedene Optionen]makemake install Start nginx -c nginx.confgPID anzeigenps -ef Stoppkill -QUIT pidkill -TERM pidkill -9 nginx Konfigurationsdatei prüfennginx -t -c nginx.configOrdentlicher Neustartkill -HUP pid -USR2: Reibungsloses Upgrade-USR1: Protokolldatei erneut öffnen-WINCH: Arbeitsprozess ordnungsgemäß schließen ------------------------------------------------ 14:09 18.05.2014 3. Grundkonfiguration und Optimierung
Dreieinhalb Stunden verschwendet
17:24 18.05.2014 WEITER nginx.config-Struktur Ereignisse{}http{Server{}Server{}}nginx unterstützt eine Vielzahl virtueller Hostkonfigurationen: IP-basiert, domänennamenbasiert und portbasiert. log_format kann auf viele Variablen verweisen! Der Anhang enthält eine vollständige Liste, einschließlich aller Module. Nach dem Reverse-Proxy ist $http_x_forwarded_for die echte IP des Clients, $remote_addr nicht. Browserseitiges Caching muss eingestellt werden, insbesondere für Inhalte, die sich wenig ändern, wie Bilder, JS, CSS, SWF usw. ------------------------------------------------18:14 2014-05-18 4. FastCGI
PHP oder Perl
location ~ .*.(php|php5)?${fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php; include fcgi.conf;}Automatischen Start beim Booten einstellen
Linux-Betrieb ist das, was ich stärken möchte, Es ist notwendig, ein Buch zu finden und es zu lesen. Netzwerkeinstellungen, Systemeinstellungen, Skriptanalyse usw.
vi /etc/rc.local-----------------------------------------ulimit -SHn 65535/../php/sbin/php-fpm start/../sbin/nginx------------------------------------------------ 18 :40 18.05.2014 5. Heben Sie Ihre Stimmung. upstream tomcat_server{server 127.0.0.1:8000;
}
Es gibt viele hier Server. Sie können ip_hash verwenden und die Last ist möglicherweise unausgeglichen, es besteht jedoch keine Notwendigkeit, die Sitzung zu kopieren. Durch das Kopieren der Sitzung wird der Speicher jedes Servers im Cluster gefüllt.
Server{
location ~ .(jsp|jspx|do)?${
proxy_set_header Host $host;
proxy_set_header }
}
------------------- ------- ------18:46 2014-05-18 6. HTTP-Lastausgleich und Reverse-Proxy
Überprüfen Sie OSI
1. Physisch
2. Datenverbindung
3 🎜>4. Übertragung! TCP und UDP werden wichtig
5. Sitzung
7. Anwendung: HTTP, FTP, Telnet, SNMP warten .
Übliche Lastausgleichslösungen befinden sich auf Layer 4/Layer 7.
Der legendäre F5. High-End-Ausrüstung. Gibt es billigere inländische? Überzeugt, Hua 3.
LVS (Linux Server) für die einfachen Leute
Suche nach Büchern, die ich speziell lesen möchte
nginx
unten offline
Backup ist nur aktiviert, wenn alle Nicht-Backup-Maschinen ausgefallen sind
ip_hash ähnelt session_sticky
Upstream
proxy_pass
fastcgi_pass
Nginx Dual-Machine High Availability:
Drift IP; Skripte für Hintergrundüberwachung schreiben und Offline-Übertragung.
Dies sollte mit keepalived implementiert werden? Finden Sie den Artikel und lesen Sie ihn. Eine einzelne Maschine kann 100.000 laden. Der Bedarf an Load Balance ist möglicherweise nicht groß, aber der Bedarf an HA ist zu groß. Gibt es Modulunterstützung?
------------------------------------------------
19:23 2014-05-18 7. Umschreiben
Verschiedene reguläre AusdrückePCRE
bei Umschreiben Set Return Break
= gleich
!= ungleich ~ Groß- und Kleinschreibung beachten
~* Große Nachrichten werden nicht unterschieden
-f Datei existiert
!-f Datei existiert nicht
-d Verzeichnis existiert
-e Datei oder Das Verzeichnis existiert
-x file executable
(), auf das später über $1-$9
set
zugegriffen werden kann 7.2.7 Globale Variablen, die verwendet werden können
$http_cookie
$args
7.3 PCRE-Syntax! !
Zeichen übertragen
^ Zeilenanfang
$ Zeilenende
* Vorherige 0-mal oder n-mal
+ das vorherige 1 oder n-mal
? 0 oder 1 Mal zurück
Verschiedene Kastanien
--------------------- ---- -------
19:56 2014-05-18
8. Modulentwicklung
Wettbewerb zwischen Experten.
Konfigurationsdateien umfassen: Haupt-, Server-, Upstream- und StandortdateienModule können nicht dynamisch hinzugefügt werden und müssen zur Kompilierungszeit in Binärdateien kompiliert werden. Handler-VerarbeitungsmodulFilter oder grünes ModulLoad-Balancer-Lastausgleichsmodul
8.1 Das
-Modul entspricht dem Aspekt in aop und kann zur Verarbeitung verschiedener Ereignisse gemountet werden.
Schauen Sie nach unten, ohne genau hinzusehen.
------------------------------------------------
20: 02 2014-05-18
9. CacheDer berühmte Squidproxy_cache-BefehlSina Development The ncache-Modul, das Multi-Core voll ausnutzt, ist schneller als Squid20:29 2014-05-18
proxy_cache_path
proxy_cache_method
proxy_cache_valid
proxy_cache_key
./configure --add-module=../ngx_cache_purge-1.0
Proxy_temp_path und Proxy_cache_path müssen in derselben Partition erstellt werden
----------------------------------------- ------ -
20:41 2014-05-18
10. Fall
Sina Video
Jinshan Xiaoyao.com
CMS
Video-Website
rsync, schauen Sie es sich später an.
------------------------------------------------
21:05 2014-05-18
11. Atypische Anwendungen
HTTPS
./configure --with-http_ssl_module
Spontanes Zertifikat
Privaten Schlüssel erstellen
openssl genrsa -des3 -out api.bz.key 1024
openssl req -new -key aop.bz.key -out api.bz.csr
openssl rsa -in api.bz.key -out api.bz_nopass.key
Zertifikat erstellen
openssl req -new -x509 -days 3650 -key api.bz_nopass.key -out api.bz.crt
Private Schlüsseldatei abrufen: api.bz_nopass.key
Zertifikat: api.bz.crt
Server{
ssl on;
ssl_certificate api.bz.crt;
ssl_certificate_key api.bz_nopass.key;
}
Beantragen Sie ein Zertifikat von CA
Generieren Sie auf ähnliche Weise den privaten Schlüssel
http://startssl.com bietet kostenlose Zertifikate.
FLV-Videoserver
HTTP-Download oder Streaming (Flash Media Server/RTMP)
nginx bietet ein FLV-Stream-Modul und unterstützt Drag
./configure --with-http_flv_module
limit_rate_after 3m
limit_rate 512k
Keyframes hinzufügen
Suchen Sie einen FLV-Player
Streaming-Medien fms/red5-Lastausgleich
VPS (Virtual Private Server) virtuelle Maschine
Der größte Indikator ist das Gedächtnis.
Proxy weiterleiten
-------------------------- ----
21:27 2014-05-18 12. Kernmodul
--------- ----- ----
21:34 2014-05-18 13. Standard-HTTP-Modul
---------------------------------
21:53 18.05.2014 14. Andere Module
12, 13 und 14 sind Referenzhandbücher, die sorgfältig gelesen und jederzeit zum Nachschlagen aufbewahrt werden sollten.
------------------------------------------------
21:55 2014-05-18 15. E-Mail-Modul
Das ist auch sehr praktisch!
Buch 2:
Lesen Sie schnell die ersten drei Kapitel von „Umfassendes Verständnis von Nginx: Modulentwicklung und Architekturanalyse ".
Kapitel 1 Installation
Lass es uns morgen auf dem Weg zur Arbeit lesen.
Kapitel 2 Konfiguration
Sehr detailliert!
Kapitel 3 Wie schreibe ich ein HTTP-Modul
Es ist zu detailliert, Sie können ein Hallo Welt erstellen, indem Sie ihm folgen. Warum habe ich den Drang, c zu schreiben?
Das Design und der Code von Nginx sind großartig, ich möchte unbedingt einen genaueren Blick darauf werfen.
Schade, dass die Zeit schwierig zu vereinbaren ist.
Alles, was Sie aufgeben, müssen Sie gewinnen.
Buch 3, „Lernen des Nginx-HTTP-Servers“
Verdammt!
Sogar grundlegende Linux-Befehle werden gelehrt, beginnend mit mkdir.
Ein Muss für Anfänger! !
Ich weiß wirklich nicht, wie man eine Benutzergruppe erstellt, ich sollte mir die Zeit nehmen, es mir genauer anzusehen.
Ch1 grundlegender Linux-Betrieb
Ch2-Installation 22:11 2014-05-18
Ch3-Konfiguration 22:12 2014-05- 18
Ch4 HTTP-Konfiguration 22:13 2014-05-18
Ch5-Modulkonfiguration 22:14 2014-05-18
Ch6 PHP, Python 22:15 2014-05-18
Ch7 Apache
Ch8 Portiert von Apache
22:17 2014- 05-18 Ich nahm Erkältungsmedikamente und war fast schläfrig.
Das Obige ist eine Einführung in Nginx-Lesenotizen, einschließlich relevanter Inhalte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.