Värd för flera domäner på en server eller IP med Apache eller Nginx

Låt oss lära oss hur du konfigurerar Apache och Nginx för att vara värd för flera webbplatser.

Hosting av webbplatser på molnservern ger mycket flexibilitet jämfört med delad hosting. Du kan installera vad du vill, skala upp eller ned och konfigurera för bättre prestanda och kostnadsoptimering.

Om du driver flera företagswebbplatser men inte vill ha dem separat kan du dra fördel av Virtual Server i webbservrar. Låt oss ta en titt på detta scenario.

Jag har följande två webbplatser som jag skulle vilja peka på min one cloud VM.

Innan implementering, låt oss förstå hur det fungerar.

Konceptet att ha flera webbplatser på en enda webbserverinstans kallas Virtual Server. Den definieras i konfigurationsfilen tillsammans med URL:en. När en begäran görs till en definierad URL, skulle webbservern betjäna trafiken från respektive dokumentrot.

Konfigurera Virtual Host i Apache för att vara värd för flera domäner

  • Logga in på Apache HTTP Server
  • Gå till apache conf-platsen. (i standardinstallation – du hittar den här /etc/httpd/conf/httpd.conf)
  • Ta en säkerhetskopia av filen httpd.conf
  • Skapa en VirtualHost-behållare som nedan jag har gjort för två domäner.
<VirtualHost *:80>
ServerAdmin [email protected]
   DocumentRoot /opt/htdocs/lab
   ServerName lab.adminvista.com.com
   ErrorLog logs/lab.adminvista.com.com-error_log
   CustomLog logs/lab.adminvista.com.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>

Obs: Ändra värdet för ServerAdmin, DocumentRoot, ServerName, ErrorLog, CustomLog baserat på dina krav.

  • Starta om Apache HTTP och testa båda webbadresserna.

Konfigurera virtuell värd i Nginx för att vara värd för flera domäner

  • Logga in på Nginx-servern
  • Gå till platsen där du har installerat Nginx. (i standardplats – du hittar den här /etc/nginx/)

Det finns flera sätt att uppnå detta. Antingen kan du ändra filen nginx.conf eller anpassad fil om du har någon. Du kan också skapa en custom.conf under conf.d-mappen. Välj vad som fungerar för dig och ta en säkerhetskopia om du ändrar en befintlig fil.

  • Skapa ett serverblock för båda URL:erna som jag har visat nedan.
server {
listen 80;
   root /opt/htdocs/lab;
index index.html index.htm;
   server_name lab.adminvista.com.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;
   }
}

Obs: Ändra värdet för root, server_name baserat på ditt krav.

  • Starta om Nginx och testa båda webbadresserna

Glöm inte att uppdatera DNS-posten för din URL för att mappa till serverns IP. När du är klar bör du kunna komma åt webbadresserna som visas genom ovanstående konfiguration som du gjorde.

Slutsats

Det var snabbguiden för att vara värd för flera domäner i en enda webbserverinstans som Apache eller Nginx. När din webbplats är aktiv, glöm inte att testa den mot säkerhetsbrister.

Gillade du att läsa artikeln? Vad sägs om att dela med världen?