hoe een Nginx Server voor het eerst te installeren en configureren
Nginx is een van de populaire webservers, en wordt gebruikt als een proxy server, reverse proxy server, load balancer. Het is een populair alternatief voor de verouderende Apache webserver, omdat het is ontworpen om resource-intensieve toepassingen in het achterhoofd te houden. Het is event driven, asynchrone en niet-blokkerende, en daarom vaak verslaat Apache in termen van prestaties. Nginx wordt vaak gebruikt in grote webservers waarmee miljoenen gebruikers tegelijkertijd verbinding maken om toegang te krijgen tot bronnen.omdat
asynchroon is, is de mogelijkheid om miljoenen gebruikers aan te kunnen zonder de server te vertragen de Nummer één keuze in veel bedrijven om hun systemen te implementeren. Deze handleiding laat zien hoe u Nginx webservers met gemak kunt installeren en configureren. De Gids maakt gebruik van Ubuntu 18.04 als de versie, omdat het LTS; daarom heeft het een ondersteuning op lange termijn die nodig is in een productie-omgeving. Het installeren en configureren van een Nginx webserver is relatief eenvoudig, maar het gaat om een aantal stappen.
installatie
Deze instructies zijn geschreven voor Ubuntu 18.04 LTS versie, en dus zou het niet gebruikt moeten worden in een andere Linux smaak tenzij dezelfde commando ‘ s daar ook werken. Het wordt aangemoedigd om Nginx te installeren in een reguliere gebruikersaccount met sudo toestemming om het beveiligingsrisico te beperken. Dit artikel laat echter niet zien hoe je een gebruikersaccount kunt maken omdat het buiten zijn bereik valt.
- voordat u Nginx installeert, moet u de lokale pakketinformatie bijwerken en vervolgens de pakketten bijwerken met de volgende commando ‘ s. Het zorgt ervoor dat de nieuwste versie van Nginx wordt opgehaald uit de repository (server) wanneer Nginx install commando wordt gebruikt. Dist-upgrade Commando behandelt op intelligente wijze afhankelijkheden om incompatibiliteitsproblemen tussen verschillende pakketten te voorkomen.
- Installeren Nginx met het volgende commando
- De installatie vraagt slechts 3 belangrijkste commando ‘ s worden gebruikt, dan Nginx in de server is geïnstalleerd. Omdat in deze gids, Nginx wordt gebruikt als een webserver, de index.html wordt gemaakt zodra Nginx is geïnstalleerd, en het kan worden benaderd via het externe IP-adres van de server.
http://IPAddress
- hoewel het is geïnstalleerd, is het belangrijk om ervoor te zorgen dat Nginx service automatisch zijn eigen start als de server om een of andere reden opnieuw wordt opgestart. Het kan worden gedaan als volgt.
- gebruik de volgende twee commando ‘ s om de bestandssysteem permissies aan te passen. De eerste opdracht wijst de naam van de gebruiker die momenteel is aangemeld toe aan de toestemming van het bestand. Als het root is, dan is het root, als het een aangepaste naam is, dan zijn naam. Met het tweede commando wordt de toestemming van het bestand ingesteld. Aangezien de toestemming voor” alle gebruikers ” is ingesteld op R, kan het bestand door iedereen worden gelezen, wat wordt aanbevolen voor publiek toegankelijke bestanden. W normen voor schrijftoestemming, die nodig is voor de eigenaar om wijzigingen aan te brengen in het bestand, en het komt handig wanneer een bestand wordt gewijzigd door middel van een script terwijl ze in de server, zoals op het WordPress dashboard.
sudo chmod-R 755/var/www / example.com
configuratie
het installeren van Nginx is eenvoudig zoals hierboven beschreven, maar configuratie vereist meer inspanning, en het hangt ook af van de vereisten en omgeving van de server. Deze handleiding laat zien hoe u een Nginx-webserver kunt configureren voor één domein, hoe u basisinstellingen kunt aanpassen, hoe u SSL/TLS kunt instellen, wat Google nodig heeft om de rang van de website te verbeteren, en ten slotte welke commando ‘ s betrokken zijn bij het opzetten van een Nginx-server.
- gebruik het volgende commando om Nginx default file 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 voor één domeinnaam, en verwerkt de aanvragen naar het domein volgens de regels binnen de grens. Nano editor is slechts een console-editor die helpt bij het openen van tekstbestanden met gemak. Het is sterk aanbevolen om een betere editor zoals Notepad++ met nppftp-extensie gebruiken als het is heel gebruiksvriendelijk in vergelijking met een console teksteditor.
het configuratiebestand bevat enkele belangrijke regels zoals te zien in het volgende codefragment.
- Listen directive specificeert het poortnummer van het te beluisteren IP-adres. Voor verbinding versleutelde webservers is het 443, en voor niet-versleutelde webservers is het 80. Default_server maakt het de standaard server van alle sever blokken, wat betekent dat dit serverblok wordt uitgevoerd als het request header veld niet overeenkomt met een van de opgegeven servernamen. Het is handig om alle verzoeken aan de server vast te leggen, ongeacht de hostnaam (wat in dit geval domein betekent).
- Server_name specificeert de hostnaam, meestal de domeinnaam. Het wordt aanbevolen om zowel naked als www smaken van het domein te gebruiken, bijvoorbeeld …
- Root directive specificeert waar de webpagina ‘ s zich bevinden in de bestandsserver, 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 ten opzichte daarvan genomen.
- Index directive specificeert de naam van het indexbestand, dit betekent het bestand dat wordt geopend wanneer de hostnaam wordt ingevoerd in de adresbalk van de webbrowser.
- het locatieblok is nuttig voor het verwerken van richtlijnen onder de hostnaam, bijvoorbeeld google.com/images, / video ‘ s. De / legt de hoofddirectory van de domeinnaam vast. try_files directive probeert de inhoud (bestand, map) of gooit niet gevonden bericht als de bron niet beschikbaar is. Als de / videos directory moet worden verwerkt, gebruik dan Locatie / video ‘ s.
listen 80 default_server;
listen: 80 default_server;
server_name _;
root / var / www / html/;
index index.php index.html-index.htm;
location / {
try_files $uri $uri/ =404;
}
}
- het wordt aanbevolen om de server opnieuw op te starten zodra deze is ingesteld. Herstarten van de Nginx service, herlaad ook het configuratiebestand. Als een eenvoudige wijziging is gemaakt in het configuratiebestand, is het gebruik van reload ook genoeg in plaats van herstart om te voorkomen dat de verbinding naar de server valt.
- tegenwoordig is het belangrijk om de verbinding met de website te versleutelen om de rang van de website in de Google-index te verbeteren. Versleutelen kan worden gedaan door het implementeren van SSL/TLS certificaat in de webserver. Er zijn tal van certificaten beschikbaar in de markt, zowel betaald, en gratis, maar deze gids maakt gebruik van een gratis certificaat bekend als let ‘ s encrypt. Het is gratis, maar vereist om het certificaat eens in de 3 maanden te vernieuwen in vergelijking met een jaar in commerciële certificaten. Het volgende commando voegt certbot PPA (personal package archive) toe aan het systeem. Deze PPA ‘ s worden gehost in launchpad.net, en wanneer apt-get wordt gebruikt, worden ze onmiddellijk gedownload naar het systeem.
- het volgende commando downloadt en installeert certbot flavour voor nginx. Zoals hierboven vermeld, het is gedownload van launchpad.net.
- gebruik het volgende commando om SSL/TLS voor de opgegeven domeinnaam en de www-smaak aan te zetten. Dit moet hetzelfde domein zijn dat in bovengenoemde stappen is geconfigureerd. Als het domein niet is geconfigureerd, moet u ervoor zorgen dat het voorafgaand aan deze stap is gedaan.
– d www.domein.extensie
- wanneer de SSL/TLS is geïnstalleerd zoals hierboven, Herstart de server opnieuw om wijzigingen van kracht te laten worden.
- het wordt ook aanbevolen om de configuratie op de volgende website te gebruiken, omdat het de SSL / TLS-configuratie aanpast voor een bepaalde vereiste. De belangrijke opties in de volgende website zijn, modern, intermediate, en oud. Moderne optie maakt de verbinding zeer veilig, maar ten koste van de compatibiliteit, en dus de site zal niet laden op oudere we browsers. Intermediate optie balanceert zowel compatibiliteit, en veiligheid, en dus aanbevolen voor de meeste websites. Oud type is voor legacy systemen. Het wordt niet aanbevolen voor productielocaties, 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 zijn hoge prestaties wordt het vaak gebruikt in bedrijven om hun webservices te bedienen. Deze handleiding leert hoe u een Nginx-server voor het eerst eenvoudig op een Ubuntu-server kunt installeren en configureren. Installeren en configureren zijn niet zo moeilijk omdat alle commando ‘ s de ingewikkelde taken onder de laag abstraheren. Al met al is er geen reden om Nginx niet te gebruiken, tenzij het bedrijf een andere eis verwacht die Nginx niet biedt.