Omdat het asynchroon is en miljoenen gebruikers kan verwerken zonder de server te vertragen, is het in veel ondernemingen de eerste keuze om hun systemen in te zetten. Deze handleiding laat zien hoe u Nginx-webservers eenvoudig kunt installeren en configureren. De gids gebruikt Ubuntu 18.04 als de versie omdat het LTS is; daarom heeft het een langdurige ondersteuning die vereist is in een productieomgeving. Het installeren en configureren van een Nginx-webserver is relatief eenvoudig, maar het vereist een aantal stappen.
Installatie
Deze instructies zijn geschreven voor Ubuntu 18.04 LTS-versie, en zou daarom niet in een andere Linux-smaak moeten worden gebruikt, tenzij dezelfde opdrachten daar ook werken. Het wordt aanbevolen om Nginx te installeren in een normaal gebruikersaccount met sudo-toestemming om het beveiligingsrisico te verkleinen. Dit artikel laat echter niet zien hoe u een gebruikersaccount kunt maken, omdat dit buiten het bereik valt.
- Voordat u Nginx installeert, moet u de lokale pakketinformatie bijwerken en vervolgens de pakketten bijwerken met de volgende opdrachten:. Het zorgt ervoor dat de nieuwste versie van Nginx wordt opgehaald uit de repository (server) wanneer de Nginx install-opdracht wordt gebruikt. De opdracht Dist-upgrade behandelt op intelligente wijze afhankelijkheden om incompatibiliteitsproblemen tussen verschillende pakketten te voorkomen.
- Installeer Nginx met het volgende commando:
- De installatie vereist slechts 3 hoofdcommando's om te gebruiken, daarna wordt Nginx op de server geïnstalleerd. Aangezien in deze handleiding Nginx wordt gebruikt als een webserver, is de index.html wordt aangemaakt zodra Nginx is geïnstalleerd en is toegankelijk via het externe IP-adres van de server.
http://IP-adres
- Ook al is het geïnstalleerd, het is belangrijk om ervoor te zorgen dat de Nginx-service automatisch zijn eigen start als de server om de een of andere reden opnieuw wordt opgestart. Het kan als volgt worden gedaan:.
- Gebruik de volgende twee opdrachten om de machtigingen voor het bestandssysteem aan te passen:. De eerste opdracht wijst de momenteel ingelogde gebruikersnaam toe aan de toestemming van het bestand. Als het root is, dan is het root, als het een aangepaste naam is, dan is het de naam. Met het tweede commando wordt de toestemming van het bestand ingesteld. Aangezien toestemming voor "alle gebruikers" is ingesteld op R, kan het bestand door iedereen worden gelezen, wat wordt aanbevolen voor openbaar toegankelijke bestanden. W-normen voor schrijfrechten, die de eigenaar nodig heeft om wijzigingen in het bestand aan te brengen, en Het is handig wanneer een bestand wordt gewijzigd via een script terwijl het zich op de server bevindt, zoals op het WordPress-dashboard.
sudo chmod -R 755 /var/www/voorbeeld.com
Configuratie
Het installeren van Nginx is eenvoudig zoals hierboven beschreven, maar de configuratie vereist meer inspanning en hangt ook af van de vereisten en omgeving van de server. Deze handleiding laat zien hoe u een nginx-webserver voor één domein configureert, hoe u de basisinstellingen aanpast, hoe u SSL/TLS instelt, wat vereist is door Google om de positie van de website te verbeteren, en tot slot welke commando's betrokken zijn bij het instellen een Nginx-server opzetten.
- Gebruik de volgende opdracht om het Nginx-standaardbestand te openen via nano-editor:. Standaardbestand wordt automatisch gemaakt wanneer Nginx voor de eerste keer wordt geïnstalleerd en definieert de configuratie voor een webserver. Deze configuratie bevat een serverblok dat is toegewezen aan één domeinnaam en verwerkt de verzoeken naar zijn domein volgens de regels binnen zijn grens. Nano-editor is slechts een console-editor die helpt bij het gemakkelijk openen van tekstbestanden. Het wordt ten zeerste aanbevolen om een betere editor zoals Notepad++ met NppFTP-extensie te gebruiken, omdat het vrij gebruiksvriendelijk is in vergelijking met een console-teksteditor.
Het configuratiebestand bevat een paar belangrijke regels, zoals te zien is in het volgende codefragment:.
- Luisterrichtlijn specificeert het poortnummer van het IP-adres om te luisteren. Voor verbinding versleutelde webservers is dit 443, en voor niet-versleutelde webservers is dit 80. Default_server maakt het de standaardserver van alle serverblokken, wat betekent dat dit serverblok wordt uitgevoerd als het headerveld van het verzoek niet overeenkomt met een van de opgegeven servernamen. Het is handig om alle verzoeken aan de server vast te leggen, ongeacht de hostnaam (in dit geval dus domein).
- Server_name specificeert de hostnaam, meestal de domeinnaam. Het wordt aanbevolen om zowel naakte als www-smaken van het domein te gebruiken, bijvoorbeeld..
- Root-richtlijn geeft aan waar de webpagina's zich op de bestandsserver bevinden, bijvoorbeeld Index.html en alle andere submappen van een website. De richtlijn vereist alleen het pad naar de hoofdmap van de website, de rest wordt relatief daarmee genomen.
- Index-richtlijn specificeert de naam van het indexbestand, dat wil zeggen het bestand dat wordt geopend wanneer de hostnaam wordt ingevoerd in de adresbalk van de webbrowser.
- Het locatieblok is handig om richtlijnen onder de hostnaam te verwerken, bijvoorbeeld google.com/afbeeldingen, /video's. De / vangt de root-richtlijn van de domeinnaam. try_files richtlijn probeert de inhoud (bestand, map) weer te geven of gooit niet gevonden bericht als de bron niet beschikbaar is. Als de map /videos moet worden verwerkt, gebruik dan locatie /videos.
luister 80 default_server;
luister [::]:80 standaard_server;
server naam _;
root /var/www/html/;
indexindex.php-index.html-index.htm;
plaats /
try_files $uri $uri/ =404;
- Het wordt aanbevolen om de server opnieuw op te starten zodra deze voor het eerst is geconfigureerd. Herstart de nginx-service, laad ook het configuratiebestand opnieuw. Als er een eenvoudige wijziging is aangebracht in het configuratiebestand, is het ook voldoende om opnieuw te laden in plaats van opnieuw op te starten om te voorkomen dat de verbinding met de server wegvalt.
- Tegenwoordig is het belangrijk om de verbinding met de website te versleutelen om de positie van de website in de Google-index te verbeteren. Versleuteling kan worden gedaan door een SSL/TLS-certificaat in de webserver te implementeren. Er zijn tal van certificaten op de markt beschikbaar, zowel betaald als gratis, maar deze handleiding gebruikt een gratis certificaat dat bekend staat als let's encrypt. Het is gratis, maar vereist om het certificaat eens in de 3 maanden te vernieuwen in vergelijking met een jaar bij commerciële certificaten. De volgende opdracht voegt certbot PPA (persoonlijk pakketarchief) toe aan het systeem:. Deze PPA's worden gehost in launchpad.net, en wanneer apt-get wordt gebruikt, worden ze onmiddellijk naar het systeem gedownload.
- De volgende opdracht downloadt en installeert certbot-smaak voor nginx. Zoals hierboven vermeld, is het gedownload van launchpad.netto-.
- Nadat het is geïnstalleerd, gebruikt u de volgende opdracht om SSL/TLS in te schakelen voor de opgegeven domeinnaam en zijn www-smaak. Dit moet hetzelfde domein zijn dat in de bovengenoemde stappen is geconfigureerd. Als het domein niet is geconfigureerd, zorg er dan voor dat dit vóór deze stap is gedaan.
-d www.domein.uitbreiding
- Wanneer de SSL/TLS is geïnstalleerd zoals hierboven, start u de server opnieuw om de wijzigingen van kracht te laten worden.
- Het wordt ook aanbevolen om de configuratie te gebruiken die op de volgende website wordt vermeld, omdat het de SSL/TLS-configuratie aanpast aan een gespecificeerde vereiste. De belangrijke opties op de volgende website zijn modern, gemiddeld en oud. Moderne optie maakt de verbinding zeer veilig, maar ten koste van compatibiliteit, en dus laadt de site niet op oudere browsers. Tussenliggende optie balanceert zowel compatibiliteit als beveiliging, en wordt daarom aanbevolen voor de meeste websites. Het oude type is voor legacy-systemen. Het wordt niet aanbevolen voor productiesites, maar om gebruikers te waarschuwen wanneer ze de site bezoeken vanuit oude webbrowsers, zoals Internet Explorer 5.
https://ssl-config.mozilla.org/
Conclusie
Nginx is een proxyserver, reverse proxyserver en load balancer, en vanwege de hoge prestaties wordt het vaak gebruikt in ondernemingen om hun webservices te bedienen. Deze gids leert u hoe u met gemak een Nginx-server voor de eerste keer op een Ubuntu-server kunt installeren en configureren. Installeren en configureren zijn niet zo moeilijk omdat alle commando's de gecompliceerde taken onder de laag abstraheren. Al met al is er geen reden om Nginx niet te gebruiken, tenzij het bedrijf een andere vereiste verwacht die Nginx niet biedt.