Sleva 50% všechny plány, časově omezená nabídka. Od $2.48/mo
13 minut zbývá
Webové a firemní aplikace

Hostování více webů na jednom serveru (Apache a IIS) 🌐

Lilie Carnellová By Lilie Carnellová Čtení na 13 minut Aktualizováno 18. září 2023
Hostování více webů na jednom serveru (Apache a IIS) 🌐

Jakmile máte přístup k online hostingu, budete pravděpodobně chtít vědět, jak hostovat více webů na jednom serveru. I když se to na první pohled zdá komplikované, jakmile se s tímto tématem více seznámíte, pochopíte, že to je možné s pomocí technických průvodců.

Existuje mnoho webových serverů, které vám nabízejí volně dostupné, open-source a celosvětově používané služby. Než ale vysvětlíme, jak hostovat více webů na jednom serveru, měli bychom si objasnit, co webový server je a jak funguje.

Co je to webový server?

Webový server ukládá a poskytuje obsah jako text, obrázky, videa a aplikační data pro web. Jinými slovy, klienti, kteří si vyžádají tento obsah, jej mohou prostřednictvím webového serveru využívat. Jedním z nejčastějších klientů je webový prohlížeč, který si vyžádá data z vašeho webu, když uživatel klikne na odkaz nebo si stáhne soubor.

Webový server komunikuje prostřednictvím Protokol pro přenos hypertextu (HTTP) s webovým prohlížečem. Obsah většiny webových stránek je zakódován v Hypertext Markup Language (HTML). Obsah může být statický, jako text a obrázky, nebo dynamický, například seznam položek, které si zákazník označil k nákupu. Většina webových serverů podporuje skriptování na straně serveru jazyky pro zakódování obchodní logiky do komunikace a zajištění dynamického obsahu. Typicky jsou podporovány jazyky jako Active Server Pages (ASP), JavaScript, PHP, Python a Ruby.

Jak funguje webový server?

Webové servery fungují na základě klient-server modelu. V této standardní struktuře klient požaduje zdroj nebo službu od server.

Webový server prochází několika kroky ke zpracování požadavků webových klientů:

  1. Pokud chce uživatel načíst obsah na webové stránky, webový prohlížeč požaduje přístup (Požadavek HTTP) přes internet.
  2. Webový prohlížeč vyhledá IP adresu požadované webové stránky. Překládá URL webových stránek pomocí Systém doménových jmen (DNS) nebo vyhledáváním v mezipaměti. Tento proces vám pomůže najít webový server, tedy místo, kde jsou soubory webu hostovány.
  3. V tuto chvíli webový server obdrží požadavek HTTP a zpracuje ho prostřednictvím svého HTTP server.
  4. Jakmile server HTTP požadavek přijme, bude hledat v souborech serveru a získá příslušná data.
  5. Webový server vrátí soubory webu do prohlížeče, který odeslal požadavek. Poté uživatel vidí obsah webové stránky.

Pokud však server HTTP nemůže najít nebo zpracovat požadované soubory, zobrazí se chybová zpráva ve webovém prohlížeči. Nyní, když jste se seznámili se základními koncepty webových serverů, můžete snadno naučit, jak hostovat více webových serverů na jednom serveru. 

Hostování více webů na jednom serveru: Apache

Chcete-li na serveru hostovat více než jeden web, měli byste použít soubory virtuálního hostitele Apache a určit, kterou doménu je třeba použít. Jedním ze způsobů řešení požadavků webu se nazývá Virtuální hostování na základě názvu. Když si někdo prohlédne váš web, požadavek přejde na server, který určí, které soubory webu se mají poskytnout na základě názvu domény. Tato technika vám umožní hostovat více webů na jednom serveru se stejnou IP adresou. Tento průvodce vysvětlí, jak nastavit soubor virtuálního hostitele pro jednotlivé domény. Než se ponoříme do dalších podrobností, pamatujte si, že byste měli být přihlášeni jako root.

Viz také:Hosting Linux vs Windows: Který je pro vás lepší?

Krok 1: Vytvořte adresář pro každý web

Nejprve nainstalujte apache2 pomocí tohoto příkazu

Pro systémy Debian

apt install apache2 -y

Pro systém CentOS

yum install apache2 -y

Pro každý web, který budete hostovat, musíte vytvořit vlastní adresář (v adresáři /var/www). Jako příklad použijeme domény domain.com a domain2.com.

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

Krok 2: Nastavte oprávnění složky

chmod -R 755 /var/www

Krok 3: Nastavení hlavní stránky

Aby se zobrazila domovská stránka, musíte se ujistit, že index.html je vytvořen pro každou doménu. Můžete nastavit něco jednoduchého, třeba testování pro domain.com v tomto souboru.

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

testování pro domain.com

Nyní musíte uložit a zavřít pomocí Únik tlačítka a napsáním: wq

Pomocí příkazu níže můžete zopakovat všechny tyto kroky pro druhou doménu.

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

Krok 4: Kopírování konfiguračního souboru pro každý web

Musíte zkopírovat výchozí konfigurační soubor pro každý web a vždy si ponechat kopii pro budoucí vytváření webů.

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

Krok 5: Úprava konfiguračního souboru pro každý web

Minimálně změníte a přidáte zvýrazněné řádky v <VirtualHost *:80> a </VirtualHost> značky.

Poznamenejte, že ServerAlias je alternativní název vaší domény; v tomto a většině případů přidáte www před název domény, aby si lidé mohli web prohlédnout s www i bez www (ServerName).

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

Informace o webu
Informace o webu

Opět zavřete a uložte pomocí wq. Musíte zopakovat tento proces pro vaši domain2.com.conf soubor; nezapomeňte aktualizovat ServerName, ServerAlias, a DocumentRoot pro druhou doménu.

Viz také:Apache vs NGINX

 Krok 6: Aktivace konfiguračního souboru

Váš server je standardně nastavený na čtení souboru 000-default.conf. V předchozím kroku jsme ale vytvořili nový konfigurační soubor pro každou doménu. Budeme muset zakázat výchozí soubor a použít ten, který odpovídá nové konfiguraci.

a2dissite 000-default.conf

Můžete namapovat svůj server na své domény aktivací každého nově vytvořeného souboru .conf.

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

Nyní restartujeme Apache, aby se změny zaregistrovaly.

systemctl restart apache2

Krok 7: Ověření konfigurace Apache

Po spuštění Apache můžete ověřit, že konfigurace fungují, úpravou vašeho souboru /etc/host na vašem počítači nebo DNS vaší domény.

Jakmile je všechno nastavené, můžete si web prohlédnout v prohlížeči a vidět stránky index.html vytvořené v kroku 3.

Přečtěte si také: Místní infrastruktura vs. Cloud

Hostování více webů na jednom serveru: IIS

Server IIS (Internet Information Services) může hostovat desítky nebo dokonce stovky webů. Můžete na něm hostovat více webů najednou, přičemž všechny budou poslouchat a reagovat na stejný TCP port. IIS Manager však neukazuje jasně, jak hostovat další web bez jeho připojení na jiný port, třeba 8080. Tato část vysvětlí, jak hostovat více webů na jednom serveru IIS a připojit je ke stejnému portu a IP adrese, nebo dokonce k různým IP adresám.

Jak nainstalovat IIS na Windows server?

Když nainstalujete IIS na Windows, vytvoří se prázdný Default Website, který poslouchá na standardní webový port HTTP – TCP 80. Technicky řečeno je náš web vázán na port TCP/80. Chcete-li k němu přistupovat, musíte zadat název serveru IIS ("http://web-srv1") nebo jeho IP adresu ("http://192.168.1.100") do prohlížeče.

Krok 1: Přiřazení webu IIS 

Web server IIS běžící na serveru Windows vám umožní hostovat více webů. IIS ale správně distribuje požadavky HTTP jen pokud má každý web svou jednoznačnou identifikaci. Webu v IIS tvoří tři atributy, které dohromady vytváří unikátní kombinaci pro každý web. Tyto atributy jsou uvedeny níže:

  • číslo portu TCP
  • IP adresa
  • záhlaví hostitele (hostname)

Informace o hostovaných webech se ukládají v ServerBindings atribut modelu IIS Metabase a jeho formát vypadá takto: IP:Port:Název hostitele. Pokud tedy chcete na jednom serveru hostovat více webů (stejný port a IP adresa), musíte použít jedinečná Host hlavička.

Možná si kladete otázku, co je host header? Host header je součást HTTP požadavku na server, která určuje, kterému webu je určen. Proto musíme tento host header uvést na straně webserveru. Pozor: DNS musí obsahovat správný záznam, který odpovídá hostname a IP adrese IIS webserveru.

Předpokládejme, že máte web běžící na serveru IIS a naslouchající na portu 80. Jak postupovat, pokud chcete na stejný port navázat druhý web?

Krok 2: Připojení druhého webu služby IIS

Ve správci Internetové informační služby (IIS Manager) vytvořte nový web pomocí okna Přidat web a pojmenujte ho TestSite. Tento web bude umístěn v cestě C:\inetpub\TestSite. Zatím nezadávejte název hostitele.

Po zkopírování obsahu webu do C:\inetpub\Otevřete Internet Information Service (IIS) Manager, přidejte název serveru do hostnamenu a průvodce vám pomůže vytvořit web.

hostwebsites.png

přidat-nový-web-iis
Přidat okno webu

 

Po kliknutí na Ok se zobrazí varovná zpráva s oznámením, že nemůžete použít binding *:80 pro oba tyto weby.

Přidat web

port-80-je-již-přiřazen-k-jinému-webu
Zkontrolovat vazbu

Jakmile toto upozornění potvrdíte, budete mít na portu 80 vázanou další stránku. To znamená, že ji nebudete moct spustit bez zastavení první stránky. Lépe si to uvědomíte, když se podíváte na následující obrázek.

4 Přiřazení jiného portu pro vázání webů
Přiřazení různých portů pro jednotlivé webové stránky

windows-original-vps Hostování Windows VPS

Prohlédněte si naše cenově dostupné plány Windows VPS s výkonným hardwarem, minimální latencí a jedním Windows zdarma podle vašeho výběru!

Získejte Windows zdarma

Hostování více webů na serveru IIS pomocí Host Headers

Pro druhý web IIS musíte zvolit jiný název (Host Name), aby se vytvořila jedinečná vazba. Uděláte to tak, že kliknete pravým tlačítkem TestSite a vyberte Upravit Bindings. Vyberte vazbu, kterou potřebujete, a klikněte na Upravit.

Jak vidíte na následujícím obrázku, musíme zadat jedinečný název hostitele, který uživatel použije. V tomto tutoriálu používáme TestSite; zadáme jej do pole Hostname.

test-iis-site-binding
Okno úpravy vazby webu

Vazbu webu IIS můžete konfigurovat pomocí příkazového řádku. Pokud používáte IIS 7 nebo novější, po spuštění příkazu pro konfiguraci vazby webu IIS byste měli vidět něco podobného:

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

Stejně jako první web můžete spustit i druhý.

start-iis-site
Spravovat weby

V tuto chvíli musíte přidat záznam DNS (A nebo CNAME) pro server, který odkazuje na IP adresu nebo název hostitele vašeho webového serveru IIS. Pokud používáte doménu služby Active Directory, musíte vytvořit záznamy DNS na řadiči domény. Služba IIS vám umožní vytvořit CNAME záznam pro název TestSite v konzole DNS (dnsmgmt.msc) a nastavit název domény vašeho serveru IIS jako cíl FQDN.

vytvoření záznamu CNAME pro název TestSite v konzole DNS
vytvoření záznamu CNAME pro název TestSite v konzole DNS

Záznam DNS můžete vytvořit také prostřednictvím PowerShellu pomocí následujícího příkazu:

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

Zkusme otevřít http://TestSite v prohlížeči. Pokud je vše provedeno správně, měl by se otevřít bez problémů.

více-iis-webů-na-stejném-80-http-portu
Finální výsledek testsite

 

linux-vps Linux Hosting bez komplikací

Hledáte lepší způsob, jak hostovat weby a webové aplikace? Vyvíjíte něco nového? Nebo vám jednoduše nevyhovuje Windows? Přesně proto tu máme Linux VPS.

Získejte svůj Linux VPS

Spuštění více webů s různými IP adresami na serveru IIS

Nyní se podíváme na spuštění dvou webů na webovém serveru IIS s různými IP adresami. Nejdříve musíte přidat nové rozhraní VLAN na server Windows nebo přidělit dalších IP adresu (alias) síťovému adaptéru.

V tomto tutoriálu má server primární IP adresu 192.168.13.100 a my přidáme alias IP adresy 192.168.13.101 ke stejnému síťovému adaptéru:

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

Nyní musíte vytvořit záznam A pro váš nový web na serveru DNS:

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

Zbývá otevřít nastavení vazby webu a svázat web s další IP adresou vašeho hostitele. Vazbu webů na serveru IIS můžete spravovat pomocí PowerShellu. K tomu se používá modul WebAdministration:

Import-Module WebAdministration

Můžete si prohlédnout informace o všech dostupných webech IIS a jejich vazbách:

Get-IISSite

Nebo jen o jednom webu:

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

bindings.Collection

Pomocí následujícího příkazu změňte vazbu tohoto webu; tento příkaz vám umožní změnit IP adresy, port nebo název:

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'

Spusťte tento příkaz a přidejte novou vazbu k danému webu IIS:

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

Odebrání vazby se provádí následujícím příkazem:

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

Jak jste zde viděli, na webovém serveru IIS můžete spouštět více webových stránek jak na různých IP adresách, tak na stejné IP adrese a čísle portu TCP.

Závěrečná poznámka: Hostování více webů na jednom serveru

 Tento článek se zaměřil především na základní koncepty serverů a pomáhá vám naučit se hostovat více webových stránek na jednom serveru. Poskytujeme také více Linux VPS řešení pro hosting, která můžete použít ke spouštění různých webových stránek na jednom serveru. Plány Cloudzy snižují náklady na provozování více serverů, ale umožňujeme vám také využívat naše služby k vašemu prospěchu. Navíc můžete snadno upgradovat prostředky svého serveru, včetně RAM, úložiště, procesoru a šířky pásma.

Často kladené otázky

 

Lze mít více webů na jednom webovém serveru?

Pokud máte velký server s rozsáhlými prostředky, jako je dostatek HDD místa, RAM a CPU výkonu, můžete hostovat více webových stránek pomocí virtuálního hostingu. Na svém webovém serveru můžete hostovat neomezený počet webových stránek.

Jak můžeme spustit dva weby na jednom serveru?

Hosting více webových stránek na jednom webovém serveru se nazývá virtuální server. Měli byste si ověřit, že vybraný server má dostatek prostředků na zpracování provozu a požadavků na místo na disku.

K čemu se VPS server používá?

VPS je hostingová služba, která vám může poskytnout vyhrazené (soukromé) prostředky na serveru. Věnujte pozornost skutečnosti, že používání VPS je bezpečnějším a stabilnějším řešením než sdílený hosting, který vám neposkytuje vyhrazený prostor na serveru.

Proč lidé používají VPS?

Hosting VPS se stala rozšířenou volbou, protože je obecně levnější než dedikovaný hosting a zároveň poskytuje lepší spolehlivost, zabezpečení a výkon než sdílený hosting.

Sdílet

Další z blogu

Čtěte dál.

Hlavní obrázek recenze Odoo s velkým nadpisem vlevo a logem Odoo vpravo, obklopený plovoucími panely rozhraní aplikace na jemném fialovém pozadí s motivem mraků.
Webové a firemní aplikace

Podrobná recenze Odoo: Je Odoo správný ERP systém pro vaši firmu?

Odoo patří mezi nejčastěji zvažované ERP platformy pro rostoucí firmy, a to z jednoho prostého důvodu: slibuje hodně na jednom místě. Prodej, účetnictví, sklady

Jim SchwarzJim Schwarz 11 minut čtení
Hlavní obrázek článku o open-source alternativách WordPress s barevným přechodovým pozadím, monitorem, editorem kódu, rozmazaným náhledem dashboardu a velkým nadpisem vlevo.
Webové a firemní aplikace

Nejlepší open-source alternativy WordPress pro vývojáře

WordPress stále hraje důležitou roli a zvládá širokou škálu webů. Adresář pluginů nabízí přes 62 000 pluginů a adresář šablon více než 14 000 bezplatných témat. Tha

Jim SchwarzJim Schwarz 14 minut čtení
Hlavní obrázek srovnání Automad a WordPress s logy obou platforem a nadpisem, který se ptá, který CMS by měli vývojáři zvolit.
Webové a firemní aplikace

Automad vs. WordPress: Důkladné srovnání dvou předních CMS platforem

Automad a WordPress řeší stejný úkol dvěma zcela odlišnými způsoby. Automad je flat-file CMS a šablonovací engine, takže obsah je uložen v souborech místo v databázi, zatímco WordPress,

Jim SchwarzJim Schwarz 9 min čtení

Připraveni nasadit? Od 2,48 $/měsíc.

Nezávislý cloud od roku 2008. AMD EPYC, NVMe, 40 Gbps. Vrácení peněz do 14 dní.