Nginx

Hvordan installere flere domener på en Nginx-server

Hvordan installere flere domener på en Nginx-server
I dag kjører mange nettredaktører flere domenenavn på samme server, da det reduserer kostnadene og kompleksiteten i håndteringen av mange nettsteder. Som webserver bruker denne guiden Nginx på grunn av høy ytelse, fleksibilitet og enkel å konfigurere. Denne guiden lærer hvordan du installerer flere domenenavn på den samme Nginx-webserveren og krypterer trafikken til begge domenene gratis.

Installer Nginx

Som standard leveres ikke Ubuntu med Nginx. Derfor må den installeres manuelt med følgende kommandoer.

sudo apt-get oppdatering
sudo apt-get install Nginx

Den første kommandoen oppdaterer lokal databasinformasjon, mens den andre kommandoen installerer Nginx i systemet.

Konfigurer brannmuren

Å konfigurere brannmuren avhenger av brannmurprogramvaren som er installert i systemet. Siden flere brannmurer er tilgjengelige i markedet, er det ikke lett å lære dem hvordan de skal konfigureres. Dermed viser denne guiden bare hvordan du konfigurerer standard, innebygd brannmur - UFW, aka ukomplisert brannmur. Andre brannmurer skal ha en lignende konfigurasjon som denne.

sudo ufw app liste
sudo ufw tillate 'Nginx HTTPS'
sudo ufw aktivere

Den første kommandoen viser tilgjengelige profiler som skal brukes i brannmuren. Den andre kommandoen bruker Nginx HTTPS-profilen i tillatelsen (aka Whitelist) -listen til brannmuren, og den tredje kommandoen aktiverer brannmuren. Denne guiden viser senere hvordan du bruker HTTPS. HTTPS er nødvendig i dag da det sikrer dataforbindelsen mellom klienten og serveren. Nettlesere som Chrome vil automatisk være standard for HTTPS-versjonen av hvilket som helst nettsted i fremtiden; Derfor kreves det at SSL er aktivert for ethvert nettsted, spesielt når eieren av nettstedet planlegger å forbedre SEO-poengsummen og sikkerheten.

Konfigurer filsystemet

Selv om Nginx støtter å betjene innhold gjennom flere domenenavn, er det som standard konfigurert til å betjene innhold gjennom et enkelt domene. Standard banen er Nginx er / var / www / html. Flere domener krever flere kataloger. Følgende instruksjoner viser hvordan du oppretter flere kataloger for å levere innhold gjennom flere domener.

  1. Opprett en katalog for hvert domene med følgende kommandoer. P-flagget er nødvendig for å opprette foreldrekataloger, noe som betyr at når www eller en annen katalog i adressen ikke eksisterer, oppretter den hele linjen med kataloger med p-flagg.
  2. sudo mkdir -p / var / www / nucuta.com / html
    sudo mkdir -p / var / www / nucuta.netto / html.
  3. Tilordne eierskap til katalogene. Dette sikrer at brukeren har total kontroll over katalogene. Her er imidlertid brukeren hentet fra den påloggede brukeren, og det er derfor viktig å logge på brukerkontoen som skal tilordnes til katalogen. Det første segmentet på $ USER er for brukeren, og det andre segmentet er for gruppen som brukeren tilhører.
  4. sudo chown -R $ BRUKER: $ BRUKER / var / www / nucuta.com / html
    sudo chown -R $ BRUKER: $ BRUKER / var / www / nucuta.netto / html
  5. Endre tillatelsen til katalogene med følgende kommandoer. Det er 3 enheter og 3 tillatelser i Linux-filsystemer. I det følgende eksemplet er det første sifferet for en bruker, det andre sifferet for gruppen, og det siste sifferet er for alle (også offentlig). Lesetillatelsen har verdien 4, skrivetillatelsen har verdien 2, og utføringstillatelsen har verdien 1. Disse tallene kan legges sammen for å endre tillatelsen til en enhet, for eksempel, betyr 755, BRUKER har tillatelse til å LESE, SKRIVE og UTFØRE (4 + 2 + 1 = 7), GROUP har tillatelse til å LESE og UTFØRE (4 + 1 = 5), ALL har tillatelse til å gjøre det samme. Tillatelsen brukes på filer og kataloger begge med forskjellige regler. Reglene er oppført i følgende diagram.
  6. sudo chmod -R 755 / var / www / nucuta.com / html
    sudo chmod -R 755 / var / www / nucuta.netto / html
  7. Når tillatelsen er tildelt, oppretter du en standardside for hvert domene i nettleseren når det nakne domenet kalles. Naken domene betyr domenet uten underdomener, eksempel nucuta.com.
  8. nano / var / www / nucuta.no / html / indeks.html.
    nano / var / www / nucuta.netto / html / indeks.html.
  9. Legg til følgende kjeleplatekode i hver indeksfil, og lagre som indeks.html i respektive katalog (som vist ovenfor).


Velkommen til Site One


Suksess!



Konfigurer Nginx

Å konfigurere Nginx er ikke så vanskelig da Nginx som standard støtter flere domener. Selv om det er mulig å bruke konfigurasjonsinformasjon for flere domener i samme fil, anbefales det å bruke flere filer for hvert domenes konfigurasjonsinformasjon. Standardkonfigurasjonsfilen heter "standard", og ligger i / etc / nginx / sites-available / default

  1. Naviger til / etc / nginx / sites-available / default, og slett all konfigurasjonsinformasjonen. Bruk en tekstredigerer som nano eller notisblokk++
  2. nano / etc / nginx / nettsteder-tilgjengelig / standard
  3. Kopier og lim inn følgende konfigurasjon, og lagre den.
  4. server
    hør 80 standard_server;
    hør [::]: 80 standard_server;
    root / var / www / html;
    indeksindeks.html-indeks.htm indeks.nginx-debian.html;
    Server navn _;
    plassering /
    try_files $ uri $ uri / = 404;

  5. Kopier konfigurasjonsinformasjonen i standardfilen til en domenespesifikk konfigurasjonsfil med følgende kommando.
  6. sudo cp / etc / nginx / nettsteder-tilgjengelig / standard / etc / nginx / nettsteder-tilgjengelig / nucuta.com
  7. Gjenta ovennevnte trinn til det andre domenet også med følgende kommando.
  8. sudo cp / etc / nginx / nettsteder-tilgjengelig / standard / etc / nginx / nettsteder-tilgjengelig / nucuta.nett
  9. Åpne begge filene med et tekstredigeringsprogram som nano (nano), og endre verdien på servernavnet som følger.
  10. I / etc / nginx / nettsteder tilgjengelig / nucuta.com-fil
    server_name nucuta.com
    I / etc / nginx / nettsteder tilgjengelig / nucuta.nettfil
    server_name nucuta.nett
  11. Når begge filene er konfigurert, kopierer du dem til følgende kataloger for å aktivere konfigurasjonsfilene. Det skaper en symbolsk kobling mellom den faktiske filen og katalogen; Derfor i fremtiden er det bare filene i en katalog som er tilgjengelig for nettsteder som må endres for å gjøre endringer i kataloger som er tilgjengelige på nettstedet og i nettsteder.
  12. sudo ln -s / etc / nginx / nettsteder-tilgjengelig / nucuta.no / etc / nginx / nettsteder-aktivert /
    sudo ln -s / etc / nginx / sites-available / nucuta.net / etc / nginx / nettsteder-aktivert /
  13. Gå gjennom konfigurasjonsfilene, gjør flere endringer, og bruk følgende kommandoer for å gjøre endringene effektive. Den første kommandoen sikrer at konfigurasjonsfilene er fri for ugyldig konfigurasjonsinformasjon, og den andre kommandoen sørger for at serveren lastes på nytt eller startes på nytt for å gjøre endringene effektive. Bruk enten kommandoene på nytt eller start på nytt. Last på nytt er å foretrekke, men omstart kan brukes hvis omlastning ikke gikk.
  14. systemctl config nginx
    systemctl last inn nginx eller systemctl start nginx på nytt.

Konfigurer DNS-postene

Å konfigurere DNS-innstillingene avhenger av DNS-leverandøren. Imidlertid har alle DNS-leverandørene et lignende grensesnitt. Som standard gir domeneregistratoren tilgang til DNS-postene. Denne fasen krever IP-adressen til serveren der nginx-webserveren er vert. Å få IP-adressen avhenger helt av plattformen. Plattformer som Linode, DigitalOcean, Vultr viser IP-en i dashbordet. Hvis det er vanskelig å finne kontakt supporten til den respektive tjenesteleverandøren.

  1. I DNS-innstillingene legger du til en “A” -post, og bruker serverens IP som verdi, domenenavn som vert. Forsikre deg om at domenenavnet som brukes her er det samme som domenenavnet som brukes i Nginx-konfigurasjonsfilen. Etter å ha konfigurert ett domene, gjenta det også for det andre domenet.
  2. La DNS-postene oppdateres. Det tar vanligvis opptil 24 timer, men vanligvis gjøres det på få minutter.

Aktiver HTTPS

Aktivering av HTTPS er ganske enkelt, og kan gjøres gratis med letsencrypt. Letsencrypt er en sertifiseringsmyndighet med åpen kildekode som frigjør gratis SSL-sertifikater til webansvarlige for å kryptere trafikken til nettstedet deres.

  1. Installer snap-in operativsystemet med følgende kommando. Merk at dette segmentet vil bruke en snap-demon for å installere alle nødvendige pakker i stedet for apt eller apt-get. Snap er alternativ pakkehåndtering, og et distribusjonsverktøy som kan brukes til å installere pakker i Ubuntu, og mange andre Linux-operativsystemer. Dette er ikke nødvendig å installere når du har Ubuntu 16.04 LTS eller annen høyere versjon. Imidlertid kjører du fortsatt den siste kommandoen for å sikre at snap er oppdatert.
  2. sudo apt oppdatering
    sudo apt installer snapd
    sudo snap installere kjerne; sudo snap oppdatering kjerne
  3. Installer certbot som konfigurerer, og fornye SSL-sertifikatene for begge domenene. Uten certbot må SSL-sertifikater installeres manuelt. I tillegg må fornyelse også gjøres manuelt. Dette kan være et problem ettersom letsencrypt-sertifikater utløper etter 3 måneder senere. Derfor må SSL-sertifikatet fornyes en gang per 3 måneder for å sikre at nettstedet kan fungere som forventet. Bruk følgende kommando for å installere certbot uten problemer.
  4. sudo snap install - klassisk certbot
  5. Certbot er installert i / snap / bin / certbot-katalogen. For å kjøre den kjørbare filen certbot gjennom kommandolinjen uten å spesifisere hele banen, kjør følgende kommando. Det skaper en symbolsk kobling mellom snap / bin / certbot og / usr / bin / certbot-katalogen, og lar dermed certbot-kjøreren kjøre på kommandolinjegrensesnittet uten å spesifisere hele banen.
  6. sudo ln -s / snap / bin / certbot / usr / bin / certbot
  7. Konfigurer Nginx-forekomsten i systemet med følgende kommando. Det er en annen kommando som direkte retter seg mot det spesifikke domenet når du konfigurerer SSL. Den andre kommandoen spesifisert nedenfor installerer og konfigurerer SSL-sertifikatet for det angitte domenenavnet.
  8. sudo certbot -nginx
    certbot --nginx -d nucuta.com
  9. Kjør følgende kommando for å simulere fornyelsesprosessen. Den faktiske kommandoen uten -tørk-flagg utføres automatisk da certbot konfigurerer en cronjob for å kjøre kommandoen automatisk etter noen ganger senere. Det er nødvendig med en tørrkjøringstest for å sikre at certboten kan fornye sertifikatene uten noen hindring.
  10. sudo certbot fornye - tørk

Konklusjon

Det er ganske enkelt å konfigurere flere domenenavn i en Nginx-webserver, da det gir en mengde muligheter for å gjøre prosessen enkel. Certbot gjør det mulig å installere SSL-sertifikater for flere domener for en Nginx-webserver. Som SSL-sertifikat bruker denne guiden letsencrypt som gir SSL-sertifikater gratis for et hvilket som helst antall domener. Den eneste ulempen med letsencrypt er den korte levetiden, men certbot sørger for at det ikke vil være et problem for webansvarlig med sin automatiske fornyelsesprosess.

Installer det siste OpenRA-strategispillet på Ubuntu Linux
OpenRA er en Libre / Free Real Time Strategy-spillmotor som gjenskaper de tidlige Westwood-spillene som den klassiske Command & Conquer: Red Alert. Di...
Installer nyeste Dolphin Emulator for Gamecube & Wii på Linux
Dolphin Emulator lar deg spille de valgte Gamecube- og Wii-spillene dine på Linux Personal Computers (PC). Som en fritt tilgjengelig og åpen kildekod...
Hvordan bruke GameConqueror Cheat Engine i Linux
Artikkelen dekker en guide om bruk av GameConqueror-juksemotoren i Linux. Mange brukere som spiller spill på Windows bruker ofte "Cheat Engine" -appli...