50% rabat alle planer, begrænset periode. Fra kun $2.48/mo
13 min tilbage
Web og forretningsapps

Host Flere Websites på En Enkelt Server (Apache & IIS)🌐

Lily Carnell By Lily Carnell 13 min læsning Opdateret 18. sep. 2023
Host Flere Websites på En Enkelt Server (Apache & IIS)🌐

Når du får adgang til online hosting, vil du sandsynligvis gerne vide, hvordan du hoster flere websteder på én server. Selvom dette kan virke kompliceret, vil du, når du lærer mere om emnet, forstå, at du kan gøre dette med hjælp fra tekniske vejledninger.

Forskellige webservere kan give dig gratis, open-source og udbredt anvendte tjenester verden over. Men før vi forklarer, hvordan du hoster flere websteder på én server, bør vi vide, hvad en webserver er, og hvordan den fungerer.

Hvad er en webserver?

En webserver lagrer og serverer indhold såsom tekst, billeder, video og applikationsdata til et websted. Med andre ord kan klienter, der anmoder om dette indhold, bruge det via webservere. En af de mest typiske klienter er en webbrowserprogram, som anmoder om data fra dit websted, når en bruger klikker på et link eller downloader en fil.

En webserver kommunikerer gennem Hypertext Transfer Protocol (HTTP) med en webbrowser. De fleste websiders indhold er kodet i Hypertext Markup Language (HTML). Indholdet kan være statisk, såsom tekst og billeder, eller dynamisk, såsom en liste over varer, en kunde har markeret til køb. De fleste webservere understøtter server-side-scripting sprog til at kode forretningslogik ind i kommunikationen for at levere dynamisk indhold. Typisk understøttes sprog som Active Server Pages (ASP), JavaScript, PHP, Python og Ruby.

Hvordan fungerer en webserver?

Webservere fungerer efter en klient-server model. I denne standardstruktur klient anmoder om en ressource eller tjeneste fra server.

Webservere gennemgår flere trin for at behandle webbrowseres anmodninger:

  1. Når en bruger vil indlæse indhold på webstedet, anmoder webbrowseren om adgang (HTTP-anmodning) via internettet.
  2. Webbrowseren søger efter IP-adressen på det ønskede websted. Den oversætter URL på websiderne ved hjælp af Domænenavnsystem (DNS) eller søger gennem sin cache. Denne proces hjælper dig med at finde webserveren, hvor sitefilerne er hostet.
  3. På dette tidspunkt modtager webserveren HTTP-anmodningen og behandler den gennem HTTP-server.
  4. Når webserveren accepterer HTTP-anmodningen, søger den gennem serverfilerne for at få de relevante data.
  5. Webserveren returnerer sitets filer til den browser, der sendte en anmodning. Derefter ser brugeren webstedets indhold.

Bemærk dog, at hvis HTTP-serveren ikke kan finde eller behandle de ønskede filer, vil du se en fejlmeddelelse i webbrowseren. Nu hvor du er fortrolig med webserverens hovedbegreber, kan du nemt lære, hvordan du hoster flere webservere på én server. 

Host flere websteder på én server: Apache

Hvis du vil hoste mere end ét site på en server, skal du bruge Apache's virtual host-filer til at angive, hvilken af dine domæner, der skal bruges. En af metoderne til at løse site-anmodninger kaldes Navnbaserede virtuelle værter. Når nogen besøger dit site, sendes anmodningen til serveren, som bestemmer, hvilke sitesfiler der skal serveres, baseret på domænenavnet. Denne teknik gør det muligt for dig at hoste flere sites på én server med samme IP. Denne vejledning forklarer, hvordan du opsætter din virtual host-fil for hvert af dine domæner. Før vi går i detaljer, skal du huske at logge ind som root-konto.

Læs også:Linux vs Windows hosting: Hvilken er bedst for dig?

Trin 1: Opret en mappe for hvert websted

Installer først apache2 med denne kommando

For Debian-baserede systemer

apt install apache2 -y

For CentOS-baserede systemer

yum install apache2 -y

Du skal oprette en mappe for hvert site, du vil hoste (inden for mappen /var/www). Overvej domain.com og domain2.com som dine domænenavne.

mkdir -p /var/www/domain.com/public_html
mkdir -p /var/www/domain2.com/public_html

Trin 2: Angiv mappertilladelser

chmod -R 755 /var/www

Trin 3: Konfigurer en indeksside

For at se en startside skal du sikre, at index.html filen er oprettet for hvert domæne. Du kan indstille noget simpelt som test til domain.com i denne fil.

vim /var/www/domain.com/public_html/index.html

test til domain.com

Nu skal du gemme og afslutte ved hjælp af Flugt knappen og skrive: wq

Du kan bruge kommandoen nedenfor til at gentage alle disse trin for dit andet domæne.

vim /var/www/domain2.com/public_html/index.html

Trin 4: Kopier konfigurationsfilen til hvert websted

Du skal kopiere standardkonfigurationsfilen for hver site og sikre dig, at du altid har en standardkopi til fremtidig siteoprettelse.

cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/domain.com.conf
cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/domain2.com.conf

Trin 5: Rediger konfigurationsfilen til hvert websted

Du skal mindst ændre og tilføje de markerede linjer inden for <VirtualHost *:80> og </VirtualHost> tags.

Bemærk at ServerAlias er det alternative navn for dit domæne. I dette tilfælde og de fleste andre sætter du www foran domænenavnet, så andre kan se siden med eller uden www (ServerName).

vim /etc/apache2/sites-available/domain.com.conf

Webstedsinfo
Webstedsinfo

Afslut og gem igen ved at bruge wq. Du skal gentage denne proces for dit domain2.com.conf fil. Husk at opdatere ServerName, ServerAlias, og DocumentRoot for dit andet domæne.

Læs også:Apache vs NGINX

 Trin 6: Aktivér din konfigurationsfil

Din server er som standard sat til at læse filen 000-default.conf. Men i det foregående trin oprettede vi en ny konfigurationsfil for hvert domæne. Derfor skal vi deaktivere standardfilen og bruge en, der passer til den nye konfigurationsfil.

a2dissite 000-default.conf

Du kan forbinde din server til dine domæner ved at aktivere hver af dine nyoprettede .conf-filer.

a2ensite domain.com.conf
a2ensite domain2.com.conf

Lad os nu genstarte Apache for at registrere ændringerne.

systemctl restart apache2

Trin 7: Kontrollér Apache-konfigurationer

Når du har startet Apache, kan du se, at konfigurationerne fungerer, ved at redigere din /etc/host fil på din computer eller dit domænes DNS.

Når alle aspekter er indstillet, kan du besøge dit website i en browser for at se de index.html-sider, du oprettede i trin 3.

Læs også: On-Premises vs. Cloud

Host flere websteder på én server: IIS

Du kan bruge en IIS-webserver (Internet Information Services) til snesevis eller endda hundredvis af websites. Du kan hoste flere websites på den, som lytter og reagerer på samme TCP-port. IIS Manager-grænsefladen viser dog, at du kan hoste endnu et website uden at binde det til en anden port som 8080. Dette afsnit forklarer, hvordan du hoster flere websites på samme IIS-server og binder dem til samme port og IP-adresse eller endda til forskellige IP-adresser.

Hvordan installerer man IIS på Windows-serveren?

Når du installerer IIS på Windows, oprettes et tomt standardwebsite, der lytter på standard web HTTP-port – TCP 80. Teknisk set er vores site bundet til port TCP/80. Vi skal angive navnet på IIS-serveren ("http://web-srv1") eller dens IP-adresse ("http://192.168.1.100") i din browser for at åbne dette site.

Trin 1: Binding af IIS-website 

En IIS-webserver på Windows Server kan hjælpe dig med at hoste flere websites. Men IIS distribuerer HTTP-anmodninger korrekt kun, hvis hvert website kan identificeres med en unik værdi. IIS-websitet har tre attributter, der danner en unik kombination for hvert website. Disse attributter er angivet her:

  • et TCP portnummer
  • en IP-adresse
  • en host-header (hostname)

Informationen om de hostede websites gemmes i ServerBindings attributten for IIS Metabase, og formatet er sådan her: IP:Port:Værtsnavn. Hvis du vil hoste flere websites på én server (samme port og IP-adresse), skal du bruge en unik Host-header.

Du undrer dig måske over, hvad en host-header er. En host-header er en del af en HTTP-anmodning til serveren, der angiver hvilket website den er rettet til. Derfor må vi angive denne host-header på webserver-siden. Bemærk, at DNS har den korrekte record, der matcher værtsnavnet og IP-adressen på IIS-webserveren.

Lad os antage, at du har et website, der kører på IIS-serveren og lytter på port 80. Hvad gør du, når du vil binde det andet website på samme port?

Trin 2: Binding af det andet IIS-website

I Internet Information Service (IIS) Manager skal du oprette endnu et website ved hjælp af vinduet Tilføj website og kalde det TestSite. Dette website placeres i C:\inetpub\TestSite. Vær opmærksom på ikke at angive værtsnavnet endnu.

Efter at have kopieret siteindholdet til C:\inetpub\TestSite skal du åbne Internet Information Service (IIS) Manager og tilføje site under serverens værtsnavn for at åbne guiden.

hostwebsites.png

tilføj-nyt-websted-iis
Vinduet Tilføj website

 

Efter at have klikket på OK får du en advarselmeddelelse, der fortæller dig, at du ikke kan bruge binding *:80 for begge disse websites.

Tilføj website

Bindingen på port 80 er tildelt til et andet websted
Kontroller binding

Efter at have accepteret denne advarsel, får du endnu et site bundet til port 80. Derfor kan du ikke starte det uden at stoppe det første website. Du kan forstå dette bedre ved at være opmærksom på følgende billede.

4 Tildeling af forskellige binding-porte til websites
Tildeling af forskellige binding-porte til websites

windows-original-vps Windows VPS-hosting

Se vores billige Windows VPS-planer med kraftig hardware, minimal latency og gratis Windows efter valg!

Hent din gratis Windows

Host flere websteder på IIS-server ved hjælp af værtsheadere

Du skal vælge et andet navn (værtsnavn) for det andet IIS-website for at oprette en unik binding. For at gøre dette skal du højreklikke TestSite og vælg Rediger Bindings. Vælg den binding du har brug for, og klik Rediger.

Som du kan se på følgende billede, skal vi angive det unikke værtsnavn, som brugeren adresserer. I dette vejledning bruger vi TestSite, så lad os sætte det i feltet Værtsnavn.

test-iis-site-binding
Vinduet Rediger site-binding

Du kan bruge kommandoprompten til at konfigurere IIS-sitebinding. Hvis du bruger IIS 7 eller nyere, ville du se noget lignende efter at have kørt kommandoen til at konfigurere IIS-sitebinding:

C:\Windows\System32\inetsrv\appcmd.exe set site /site.name:testsite /+bindings.[protocol='http',bindingInformation='*:80:testsite']

Ligesom det første website kan du også starte det andet.

start-iis-site
Administrer websteder

På dette tidspunkt skal du tilføje et DNS-alias for serveren (A eller CNAME), der refererer til din IIS-webservers IP-adresse eller værtsnavn. Hvis du bruger et Active Directory-domæne, skal du oprette DNS-records på domænecontrolleren. IIS giver dig mulighed for at oprette en CNAME post for TestSite i DNS-konsollen (dnsmgmt.msc) og angiv dit IIS-servers domænenavn som FQDN-målhost.

oprettelse af en CNAME-post for TestSite i DNS-konsollen
oprettelse af en CNAME-post for TestSite i DNS-konsollen

Du kan også oprette denne DNS-post via PowerShell med følgende kommando:

Add-DnsServerResourceRecordCName -HostNameAlias web-srv1.woshub.com -Name testsite -ZoneName woshub.com

Lad os prøve at åbne http://TestSite i browseren. Hvis alt er gjort korrekt, burde siden indlæse uden problemer.

flere-iis-steder-på-samme-80-http-port
Slutresultat for testsite

 

linux-vps Linux Hosting - gjort enkelt

Ønsker du en bedre måde at hoste dine websteder og web-apps på? Udvikler du noget nyt? Eller kan du bare ikke lide Windows? Det er præcis derfor, vi tilbyder Linux VPS.

Få din Linux VPS

Kør flere websteder med forskellige IP-adresser på IIS-server

Lad os nu tale om at køre to websteder på IIS-webserveren med forskellige IP-adresser. Først skal du tilføje en separat VLAN-interface på Windows-serveren eller tildele en ekstra IP-adresse (alias) til dit netværkskort.

I denne vejledning har serveren den primære IP-adresse 192.168.13.100, og vi tilføjer IP-alias 192.168.13.101 til det samme netværkskort:

Get-NetIPAddress | ft IPAddress, InterfaceAlias, SkipAsSource
New-NetIPAddress –IPAddress 192.168.13.101 –PrefixLength 24 –InterfaceAlias “Ethernet” –SkipAsSource $True

Nu skal du oprette en A-post for dit nye websted på DNS-serveren:

Add-DnsServerResourceRecordA -Name NewSite3 -IPv4Address 192.168.13.101 -ZoneName woshub.com -TimeToLive 01:00:00 –CreatePtr

Derefter åbner du indstillingerne for Site Binding og binder webstedet til værtens ekstra IP-adresse. Du kan håndtere binding af websteder på en IIS-server med PowerShell. Til dette bruges WebAdministration-modulet:

Import-Module WebAdministration

Du kan se oplysninger om alle tilgængelige IIS-websteder og deres bindinger:

Get-IISSite

Eller kun oplysninger om et enkelt websted:

(Get-Website -Name NewSite).bindings.Collection

bindings.Collection

Brug følgende kommando til at ændre bindingen for dette websted; bemærk at du kan ændre IP-adressen, port eller navn:

Set-WebBinding -Name NewSite1 -BindingInformation "192.168.13.101:80:NewSite1" -PropertyName 'Port' -Value '8080'
Set-WebBinding -Name NewSite1 -BindingInformation "192.168.13.101:8080:NewSite1" -PropertyName 'IPAddress' -Value '192.168.13.100'

Du kan køre denne kommando for at tilføje en ny binding til det pågældende IIS-websted:

New-IISSiteBinding -Name NewSite1 -BindingInformation "*:9090:" -Protocol http

Du fjerner en binding med følgende kommando:

Remove-IISSiteBinding -Name NewSite1 -BindingInformation "*:9090:"

Som du har set her, kan du køre flere websteder på IIS-webserveren både på forskellige IP-adresser og på den samme IP-adresse og TCP-portnummer.

Afsluttende bemærkninger: Host flere websteder på én server

 Denne artikel fokuserede primært på serverens grundlæggende koncepter og hjalp dig med at lære, hvordan du kan hoste flere websteder på en enkelt server. Vi tilbyder også flere Linux VPS hostingløsninger, som du kan bruge til at køre forskellige websteder på én server. Cloudzy's planer reducerer omkostningerne ved at have flere servere, men vi giver dig også mulighed for at få maksimalt ud af vores tjenester. Desuden kan du nemt opgradere dine serverressourcer, herunder RAM, lagerplads, processor og båndbredde.

Ofte stillede spørgsmål

 

Kan man have flere websteder på en enkelt webserver?

Hvis du har en stor server med omfattende ressourcer som nok HDD-plads, RAM og CPU-kapacitet, kan du hoste flere websteder ved hjælp af virtuel hosting. Du kan hoste et ubegrænset antal websteder på din webserver.

Hvordan kan man køre to websteder på én server?

At hoste flere websteder på en enkelt webserver kaldes Virtual Server. Desuden skal du sørge for, at din valgte server har tilstrækkelige ressourcer til at håndtere trafikken og diskpladsbehovet.

Hvad bruges VPS-serveren til?

VPS er en hostingtjeneste, der kan give dig dedikerede (private) ressourcer på en server. Bemærk, at VPS er en mere sikker og stabil løsning end delt hosting, der ikke giver dig et dedikeret serverrum.

Hvorfor bruger folk VPS?

VPS-hosting er blevet et udbredt valg, fordi det generelt er billigere end dedikeret hosting, mens det giver bedre pålidelighed, sikkerhed og ydeevne end delt hosting.

Del

Mere fra bloggen

Læs videre.

Odoo-review-billede med stor overskrifttekst til venstre og Odoo-logoet til højre, omgivet af flydende app-grænseflader paneler på en blød lilla cloud-tema baggrund.
Web og forretningsapps

En omfattende Odoo-anmeldelse: Er Odoo det rigtige ERP til din virksomhed?

Odoo er en af de mest populære ERP-platforme til voksende virksomheder, og der er en simpel grund: den lover meget på ét sted. Salg, regnskab, inventar

Jim SchwarzJim Schwarz 11 min læsning
Open source WordPress-alternativer, billede med farverig gradient-baggrund, desktopmonitor, kodeeditor, sløret dashboardpræview og stor overskrift til venstre.
Web og forretningsapps

De bedste open source WordPress-alternativer designet til udvikler

WordPress har stadig betydning og fungerer stadig godt til en masse websteder. Dets plugin-bibliotek har over 62.000 plugins, og dets tema-bibliotek tilbyder over 14.000 gratis temaer. Den

Jim SchwarzJim Schwarz 14 min læsning
Automad vs. WordPress, billede med begge platformers logoer og en overskrift, der spørger, hvilket CMS-system udvikler bør vælge.
Web og forretningsapps

Automad vs. WordPress: En grundig sammenligning af to af de bedste CMS-platforme

Automad og WordPress løser samme opgave på to helt forskellige måder. Automad er et flat-file CMS og template-motor, så indhold gemmes i filer i stedet for en database, men WordPress

Jim SchwarzJim Schwarz 9 min læsning

Klar til at implementere? Fra $2,48/mdr.

Uafhængig cloud siden 2008. AMD EPYC, NVMe, 40 Gbps. 14-dages pengene-tilbage-garanti.