Nginx Guide Essentials

Den første delen av denne nginx-artikkelen snakket om arkitekturen og den viktigste nginx-konfigurasjonsfilen. Denne artikkelen fortsetter derfra og snakker om nginx-nødvendighetene: modulene som trengs og andre avanserte konfigurasjonsteknikker.

Nginx-moduler

Den virkelige kraften til nginx ligger i sine moduler. Hele bunken kan forestilles som består av moduler som forbedrer eller bygger på evnen til nginx-kjernen. For å kunne bruke dem, må de aktiveres under kompilering fra kilde og kan ikke aktiveres på kjøretid. 

Noen moduler samles automatisk inn med mindre annet er oppgitt. Av disse, la oss ta en titt på noen av de interessante og se hvilke som er mye brukt.

Begrensning og begrensning av tilgang

Tilgang (ngx_http_access_module): Dette tillater begrensning av tilgang til bestemte IP-adresser.

sted / nekte 192.168.1.1; tillat 192.168.1.0/24; tillate 10.1.1.0/16; tillat 2001: 0db8 :: / 32; nekte alle; 

HTTP Auth (ngx_http_auth_basic_module): Tillater begrensende tilgang ved hjelp av HTTP Basic Auth (brukernavn / passord).

sted / auth_basic "passord"; auth_basic_user_file conf / htpasswd; 

Subrequest Auth (ngx_http_auth_request_module): Implementerer klient autorisasjon basert på resultatet av en subrequest.

Grenseforbindelser (ngx_http_limit_conn_module): Lar deg definere maksimalt antall samtidige tilkoblinger fra en enkelt IP-adresse.

Begrens forespørsler (ngx_http_limit_req_module): Begrenser antall forespørsler fra en enkelt IP.

De fleste modulene som er inkludert med nginx og kan aktiveres under kompilering er listet her i detalj. La oss i stedet se på noen tredjepartsmoduler som kan være veldig nyttige.

Tredjepartsmoduler

Disse modulene må lastes ned og deretter kompileres med nginx som det du ser i følgende linje av kode (forutsatt at du jobber i nginx-kildekatalogen):

./ configure - add-module = / bane / til / modul / kilde

Nginx-wiki viser noen av de kjente tredjepartsmodulene. Av alle disse, la oss snakke om en modul som omskriver nettsider og tilhørende ressurser for å redusere ventetid og båndbredde.

ngx_pagespeed

Dette er en nginx-modul utviklet av Google under PageSpeed-prosjektet. Hensikten er åpenbart å forbedre sidetilpasningstider ved hjelp av en trafikkoptimaliserende nginx-modul.

Du kan installere denne modulen ved å følge 'Install ngx_pagespeed' opplæringen. Denne modulen anbefales sterkt som en må-ha på serverne dine!

Nginx-RTMP-modul

Live streaming, opptak, online transkoding, avanserte bufferingsteknikker. Det er veldig enkelt å komme i gang med å bruke dette.

Nginx-trykk-strøm-modul

En http-stream-pushmodul for nginx. Støtter EventSource Long polling. Eksempel: WebSocket.

Andre Essentials

Mens du bruker nginx, blir det også viktig å bruke følgende støtte nginx verktøy:

  1. ngxtop: ngxtop analyserer nginx-tilgangsloggen og utdataer topplignende beregninger av nginx-serveren.
  2. ngx_openresty: Gjør nginx til en fullverdig webappserver.
  3. server configs: Er et lager for konfigurasjonssnutt av nginx. Virkelig viktig når du kommer i gang og vil konfigurere konfigurasjonen riktig. Hjelper deg med å komme i gang med riktig konfigurasjon for å forbedre nettstedets ytelse og sikkerhet og passende ressursbruk.
  4. lua-nginx-modul: Utnytter Lua's kraft til Nginx.
  5. h5ai: verdt å utforske. En moderne HTTP-webserverindeks for Apache httpd, lighttpd, nginx og Cherokee.
  6. Innsamling av nginx ressurser.
  7. Hvordan skrive nginx moduler.