Host flere nettsteder på én server: Apache & Nginx guide

La oss utforske hvordan du kan konfigurere Apache og Nginx for å håndtere flere nettsteder fra én server.

Å hoste dine egne nettsteder på en skybasert server gir en betydelig mengde fleksibilitet sammenlignet med delt hosting. Du får full kontroll over installasjoner, muligheten til å skalere ressurser etter behov, og du kan finjustere serveren for optimal ytelse og kostnadseffektivitet.

Dersom du administrerer flere forretningsnettsteder, men ønsker å unngå å hoste hver av dem separat, kan du dra nytte av virtuell server-teknologi i webservere. La oss se nærmere på dette scenarioet.

Jeg har to nettsteder som jeg ønsker å peke til min ene virtuelle maskin i skyen.

Før vi begynner implementeringen, er det viktig å forstå hvordan dette fungerer.

Konseptet med å ha flere nettsteder på en enkelt webserver kalles virtuell serverhosting. Dette konfigureres i serverens konfigurasjonsfil, hvor hvert nettsted er tilknyttet en unik URL. Når en forespørsel rettes mot en spesifikk URL, vil webserveren levere innholdet fra den tilhørende dokumentroten.

Konfigurere Virtuelle Værter i Apache for Flere Domener

  • Logg deg inn på Apache HTTP-serveren.
  • Naviger til konfigurasjonsmappen for Apache. (Ved standardinstallasjon finner du den her: /etc/httpd/conf/httpd.conf)
  • Ta en sikkerhetskopi av `httpd.conf`-filen før du gjør endringer.
  • Opprett en VirtualHost-konfigurasjon som beskrevet nedenfor. Her er et eksempel for to domener:
<VirtualHost *:80>
   ServerAdmin [email protected]
   DocumentRoot /opt/htdocs/lab
   ServerName lab.tipsbilk.net.com
   ErrorLog logs/lab.tipsbilk.net.com-error_log
   CustomLog logs/lab.tipsbilk.net.com-access_log common
</VirtualHost>

<VirtualHost *:80>
   ServerAdmin [email protected]
   DocumentRoot /opt/htdocs/gf-dev
   ServerName gf.dev
   ErrorLog logs/gf.dev-error_log
   CustomLog logs/gf.dev-access_log common
</VirtualHost>

Vær oppmerksom på: Juster verdiene for `ServerAdmin`, `DocumentRoot`, `ServerName`, `ErrorLog` og `CustomLog` i henhold til dine egne behov.

  • Start Apache HTTP-serveren på nytt for å aktivere endringene, og test begge nettadressene.

Konfigurere Virtuelle Værter i Nginx for Flere Domener

  • Logg deg inn på Nginx-serveren.
  • Finn plasseringen der Nginx er installert. (Ved standardinstallasjon: /etc/nginx/)

Det finnes flere måter å konfigurere Nginx på for virtuelle verter. Du kan enten redigere `nginx.conf`-filen, en tilpasset fil dersom du har en, eller opprette en ny konfigurasjonsfil i `conf.d`-mappen. Velg den metoden som passer deg best, og husk å ta en sikkerhetskopi hvis du redigerer en eksisterende fil.

  • Lag en serverblokk for hvert av nettstedene, som vist nedenfor:
server {
   listen 80;
   root /opt/htdocs/lab;
   index index.html index.htm;
   server_name lab.tipsbilk.net.com;
   location / {
       try_files $uri $uri/ =404;
   }
}

server {
   listen 80;
   root /opt/htdocs/gf-dev;
   index index.html index.htm;
   server_name gf.dev;
   location / {
       try_files $uri $uri/ =404;
   }
}

Merk: Tilpass verdiene for `root` og `server_name` etter dine egne behov.

  • Start Nginx-serveren på nytt og test begge nettadressene.

Husk å oppdatere DNS-oppføringene for dine domenenavn slik at de peker mot serverens IP-adresse. Når dette er gjort, skal du kunne nå nettsidene dine gjennom de konfigurasjonene du har satt opp.

Konklusjon

Dette var en rask veiledning for hvordan du kan hoste flere domener på en enkelt webserver med Apache eller Nginx. Når nettstedet ditt er lansert, er det viktig å teste det for eventuelle sikkerhetssårbarheter.

Likte du denne artikkelen? Del den gjerne med andre!