ComputersProgrammering

Nginx: Setup en installatie

Wat is apache, nginx? Doel, kenmerken, aanpassingsmogelijkheden - dat zijn de dingen die elke webontwikkelaar bekend om hun ontwikkelingen te testen zou moeten zijn.

Over nginx Say a Word

Deze tool heeft een grote en diverse workflows. De eerste gaat over het lezen en configuratie verificatie. Ook onder haar controle is workflow management. Het probleem van het verleden - om inkomende verzoeken te behandelen. De nginx use model dat is gebaseerd op de gebeurtenissen. Mechanismen worden ook gebruikt, afhankelijk van het besturingssysteem met het oog op een efficiënte allocatie verzoeken rechtstreeks tussen de werkprocessen te bereiken. Hun aantal wordt altijd in het configuratiebestand aangegeven. De waarde kan ofwel vast worden of automatisch, gestuurd door het aantal processorkernen die kunnen worden gehanteerd. In nginx configuratie van het systeem en de modules gebeurt met het configuratiebestand. Daarom, als je nodig hebt om iets te veranderen, moet je op zoek naar zijn naam. Meestal is de richtlijn / etc / nginx (maar de route kan variëren met andere systemen) en een verlenging .conf.

Start, opnieuw opstarten en log

Om dit te doen, moet u het uitvoerbare runs te maken. nginx-server configureren is alleen mogelijk wanneer het wordt gestart. Beheer wordt uitgevoerd dankzij de executable met de parameter -s noemen. Om dit te doen, gebruikt u de volgende:

nginx -s signaal

In dat geval kunt u de volgende commando's te vervangen (moet komen van de gebruiker die het hulpprogramma gelanceerd):

  1. Stoppen. Het wordt gebruikt voor het snel afsluiten.
  2. Herladen. Het team nodig is om het configuratiebestand te herladen. Het feit is dat geen wijzigingen van kracht worden totdat het bestand werkt. En om van kracht te laten, een reboot nodig. Zodra u dit signaal te krijgen, het belangrijkste proces gestart om de juistheid van de syntactische component van het configuratiebestand te verifiëren en proberen toe te passen is er begeleiding aanwezig. In het geval van mislukking, zal het terug te draaien veranderingen en zal samenwerken met de oude parameters. Als alles succesvol is, zal het nieuwe workflows te lanceren, en de oude wordt aan het eind de vraag worden gestuurd.
  3. Afsluiten. Gebruikt voor een vlot verloop van de werkzaamheden. Het wordt gebruikt als u wilt wachten totdat de huidige verzoeken klaar onderhouden.
  4. Heropenen. Sluiten en openen logbestanden.

Het gebruik van hulpprogramma's

Instelling werkwijzen kunnen ook worden uitgevoerd met Unix middelen (kill tool besproken als voorbeeld). Ze gebruiken gewoonlijk een mechanisme om het signaal direct naar procesdata verzenden. Ze zijn met elkaar verbonden door middel van ID. Deze gegevens worden opgeslagen in nginx.pid bestand. Laten we aannemen dat we geïnteresseerd zijn in het proces №134. Dan, voor een vlot verloop van de noodzaak om ons de volgende informatie te sturen:

doden -s STOP 1628

Laten we aannemen dat we willen een lijst van alle geopende bestanden te zien. We maken gebruik van het hulpprogramma ps. Het team zal ook als volgt uit:

ps -ax | grep nginx

Dat wil zeggen, zoals je kunt zien, met behulp van aanvullende instrumenten aan te geven dat zij haar verzoek gaat. En nu laten we focussen op hoe toegewijd nginx-configuratie.

De structuur van het configuratiebestand

Het installeren en configureren nginx omvat werken met de modules. Ze zijn geconfigureerd met de richtlijnen die zijn opgenomen in het configuratiebestand. Ze kunnen eenvoudig of blok. Het eerste type bestaat uit de richtlijnen en parameters, die worden gescheiden door spaties en het uiteinde wordt door een puntkomma - (;). Het blok heeft een soortgelijke structuur. Maar in plaats van deze richtlijn sluiting zich extra set van instructies die in de accolades ({} instructies) worden geplaatst. Als ze de namen en andere parameters van het proces kunnen plaatsen, ze worden genoemd dergelijke constructies hebben de context. Als voorbeeld, http, de locatie en server.

De verdeling van de statische content

Dit is één van de belangrijkste uitdagingen voor de nginx configuratie. Onder de statistische verdeling van de inhoud is bedoeld afbeeldingen en HTML-pagina's (niet dynamisch). Stel dat we een enkele werkzaamheden aan het opzetten van de cluster nix nginx nodig. Is het moeilijk om dat te doen? Nee, laten we eens kijken naar een voorbeeld. Alvorens het, is het noodzakelijk om de precieze voorwaarden van het probleem. Dus, afhankelijk van het verzoek, zal de bestanden zijn afkomstig van verschillende lokale directories. Zo is in de / data / www hebben we HTML-documenten. En in de directory / data / images met afbeeldingen. Optimale instelling nginx in dit geval vereist het bewerken van het configuratiebestand, waarin u de server eenheid binnen http moet configureren. Ter ondersteuning van de twee wordt gebruikt als locatie.

Uitvoering: server

Dus, eerst moeten we mappen maken en plaatsen zich in de bestanden die ze nodig hebben om uit te breiden (in html je nodig hebt om inhoud toe te voegen). Vervolgens opent u het configuratiebestand. In dit de standaard server heeft al meerdere blokken, die voor het grootste deel worden uitgecommentarieerd. Om optimale resultaten te bereiken, dit proces moet worden uitgevoerd met betrekking tot alle componenten standaard. Voeg vervolgens een nieuwe server-eenheid met behulp van deze code:

http {

server {

}

}

Het configuratiebestand kan werken met een aantal van dergelijke blokken. Maar ze moeten worden onderscheiden door hun namen en poorten waardoor gegevens worden ontvangen.

Uitvoering: location

Bepaald binnen de server:

locatie / {

root / data / www;

}

De aanwezigheid van het teken "/" is het noodzakelijk om de verkregen gegevens te vergelijken en te zien of er sprake is zo'n een adres uit de verwerkte verzoek hier. Als er geen problemen zijn, geeft u het pad / data / www om het gewenste bestand dat zich in het lokale systeem. Als er een match met een paar blokken, kies dan degene met de langste prefix. In dit voorbeeld is de lengte gelijk aan één, dat wil zeggen, het gebruik ervan uitsluitend in het geval dat er geen "competitie". Nu, laat het zal werken:

locatie / images / {

root / data;

}

Hoe kunnen identificeren, zijn wij op zoek naar een afbeelding. Nu, laten we alle ontwikkelingen die eerder waren, en de configuratie op dit moment is als volgt te combineren:

server {

locatie / {

root / data / www;

}

locatie / images / {

root / data;

}

}

Dit is een werkende versie van die zaak, de standaard poort №80. Deze server zonder enige problemen kan op uw computer beschikbaar zijn, als je naar het adres: http: // localhost /. Hoe werkt dit allemaal werkt?

Het werkingsprincipe van het voorbeeld

Dus, wanneer zij op vragen die beginnen met een / images gekomen, de server van de overeenkomstige directory bestanden worden verzonden naar de gebruiker. In zijn afwezigheid informatie die de fout 404. zal worden gegeven als nginx configuratie uitgevoerd op de lokale computer, dan is het verzoek http: //localhost/images/example.png zullen we een bestand waarvan de locatie /data/images/example.png krijgen. Als u de optie van een "/" symbool zoeken wordt in de directory / data / www worden uitgevoerd. Maar we hebben alleen veranderd de configuratie. Het begint te werken, moet het opnieuw starten. Om dit te doen, gebruik maken van de nginx -s reload. In het geval dat de normale werking niet mogelijk is, in de access.log en error.log bestanden die zich in de richtlijn / usr / local / nginx / logs, kunt u zoeken naar de oorzaak van de storing.

Het creëren van een eenvoudige proxy server

Het kan worden gezegd over nginx - configuratie van deze faciliteit is een van de meest voorkomende toepassingen (en vrij gemakkelijk, door de manier). Het maakt gebruik van het principe van de server die een verzoek ontvangt, en vervolgens omgeleid om de nodige sites. Daarna wordt het antwoord verwacht van hen, dat hen stuurt naar degene die de taak in te stellen. Dus laten we eens kijken naar een voorbeeld van het creëren van een basispunt. Het zal ik omgaan met verzoeken gebruikers van de dienst en hen te voorzien van een afbeelding van een lokale directory. Dus, om te blokkeren http een andere server met de volgende inhoud:

server {

luisteren 8080;

root / data / UP1;

locatie / {

}

}

Laten we nu eens ontcijferen voor u: het creëren van een eenvoudige server. Hij zal luisteren poort 8080 beschikt niet over een luisteren, dan zal de server draaien op de 80 ste. Wordt weergegeven alle verzoeken binnen het lokale bestandssysteem die gericht zijn aan de directory / data / up1 (natuurlijk, daarvoor is het nodig om het te maken zijn). Om te kunnen controleren is het noodzakelijk om het bestand index.html te plaatsen. Als gevolg van de plaatsing van de richtlijnen in de context van de root-server kunnen we de locatie te allen tijde te gebruiken (aldus verwijderde toegangsbeperkingen). We zijn nu bezig om een proxy te creëren. Om het te laten werken, moeten we proxy_pass richtlijn, want die zal worden opgegeven naam protocol, en de havenfaciliteiten als parameters (voor lokale verbinding eruit zal zien http: // localhost: 8080). Krijg dit resultaat:

server {

locatie / {

proxy_pass http: // localhost: 8080;

}

locatie / images / {

root / data;

}

}

Als je kijkt naar de code en analyseren, zult u merken dat de tweede locatie-eenheid is gewijzigd. Dus in dit geval, kan het werken met de typische extensies beelden. Een beetje anders, kan het als volgt worden weergegeven:

locatie ~ \ (gif | jpg | png) $ {.

root / data / beeld;

}

De uiteindelijke proxy configuratie is als volgt:

server {

locatie / {

proxy_pass http: // localhost: 8080 /;

}

locatie ~ \ (gif | jpg | png) $ {.

root / data / beeld;

}

}

Het zal filteren verzoeken aan het eind waarvan er deze uitbreidingen en stuur ze naar de persoon die bestanden gevraagd. Vergeet niet dat het zal moeten opnieuw op als u de configuratie bestand te controleren. En geloof me, het is gewoon nginx-configuratie. Als u de configuratie "Vkontakte" bestandsserver of ander groot bedrijf te openen, zullen ze de code meer dan woorden in dit artikel te hebben.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 nl.unansea.com. Theme powered by WordPress.