Sconto del 50%. tutti i piani, tempo limitato. A partire da $2.48/mo
Mancano 13 minuti
App Web e aziendali

Hosting di più siti Web su un singolo server (Apache e IIS)🌐

Giglio Carnell By Giglio Carnell 13 minuti di lettura Aggiornato il 18 settembre 2023
Hosting di più siti Web su un singolo server (Apache e IIS)🌐

Una volta che accedi all'hosting online, probabilmente vorrai sapere come ospitare più siti Web su un server. Anche se questo può sembrare complicato, man mano che imparerai di più su questo argomento, capirai che puoi farlo con l'aiuto delle guide tecniche.

Diversi server Web possono fornirti servizi gratuiti, open source e ampiamente utilizzati in tutto il mondo. Tuttavia, prima di spiegare come ospitare più siti Web su un server, dovremmo sapere cos'è un server Web e come funziona.

Cos'è un Web Server?

Un server Web archivia e fornisce contenuti come testo, immagini, video e dati applicativi per un sito Web. In altre parole, i client che richiedono questi contenuti possono utilizzarli con l'aiuto dei server web. Uno dei client più tipici è un programma browser web che richiede dati dal tuo sito web quando un utente fa clic su un collegamento o scarica un file.

Un server web comunica attraverso il file Protocollo di trasferimento ipertestuale (HTTP) con un browser web. Il contenuto della maggior parte delle pagine Web è codificato in Hypertext Markup Language (HTML). I contenuti sono statici, come testo e immagini, o dinamici, come un elenco di articoli che un cliente ha contrassegnato per l'acquisto. La maggior parte dei server Web supporta scripting lato server linguaggi per codificare la logica aziendale nella comunicazione per fornire contenuti dinamici. In genere sono supportati linguaggi come Active Server Pages (ASP), JavaScript, PHP, Python e Ruby.

Come funziona un server Web?

I server Web funzionano sulla base di a client-server modello. In questa struttura standard, il cliente richiede una risorsa o un servizio da server.

I server Web eseguono alcuni passaggi per elaborare le richieste dei client Web:

  1. Quando un utente desidera caricare contenuto nel sito Web, il browser Web richiede l'accesso (Richiesta HTTP) attraverso Internet.
  2. Il browser web cerca l’indirizzo IP del sito web richiesto. Traduce l'URL delle pagine web utilizzando il file Sistema dei nomi di dominio (DNS) o cercando nella sua cache. Questo processo ti aiuterà a individuare il server web; è lì che sono ospitati i file del sito.
  3. A questo punto il web server riceve la richiesta HTTP e la elabora tramite il suo serverHTTP.
  4. Una volta che il suo server HTTP accetta la richiesta, cercherà tra i file del server per ottenere i dati rilevanti.
  5. Il server web restituisce i file del sito al browser che ha inviato la richiesta. Successivamente, l'utente vede il contenuto del sito web.

Tuttavia, tieni presente che se il server HTTP non riesce a trovare o elaborare i file richiesti, verrà visualizzato un messaggio di errore nel browser web. Ora che hai familiarità con i concetti principali dei server Web, puoi facilmente imparare anche come ospitare più server Web su un server. 

Ospita più siti Web su un server: Apache

Se desideri ospitare più di un sito su un server, dovresti utilizzare i file host virtuali di Apache per menzionare quale dei domini deve essere utilizzato. Viene chiamato uno dei metodi utilizzati per risolvere le richieste del sito Host virtuali basati sul nome. Quando qualcuno guarda il tuo sito, la richiesta andrà al server, determinando quali file del sito servire in base al nome di dominio. Questa tecnica ti consentirà di ospitare più siti su un server con lo stesso IP. Questo articolo della guida spiegherà come configurare il file host virtuale per ciascuno dei tuoi domini. Prima di approfondire i dettagli, ricorda che devi accedere come account root.

Leggi anche:Hosting Linux vs Windows: qual è il migliore per te?

Passaggio 1: crea una directory per ciascun sito

Per prima cosa installa apache2 usando questo comando

Per sistemi basati su Debian

apt install apache2 -y

Per il sistema base CentOS

yum install apache2 -y

Devi creare una directory per ogni sito che ospiterai (all'interno della cartella /var/www). Considera domain.com e domain2.com per i tuoi nomi di dominio.

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

Passaggio 2: imposta le autorizzazioni per la cartella

chmod -R 755 /var/www

Passaggio 3: impostazione di una pagina indice

Per vedere una home page, dovresti assicurarti che index.html il file viene creato per ciascun dominio. Puoi impostare qualcosa di semplice come test per dominio.com in questo file.

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

test per dominio.com

Ora devi salvare e smettere di usare Fuga pulsante e digitazione: wq

Puoi utilizzare il comando seguente per ripetere tutti questi passaggi per il tuo secondo dominio.

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

Passaggio 4: copia del file di configurazione per ciascun sito

È necessario copiare il file di configurazione predefinito per ogni sito, assicurandosi di avere sempre una copia predefinita per la futura creazione del sito.

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

Passaggio 5: modifica del file di configurazione per ciascun sito

Almeno cambierai e aggiungerai le linee evidenziate all'interno del file <Host virtuale *:80> E tag </VirtualHost>.

Notare che ServerAlias è il nome alternativo per il tuo dominio; in questo caso e nella maggior parte dei casi, inserisci www davanti al nome di dominio in modo che altri possano vedere il sito tramite www o non www (NomeServer).

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

Informazioni sul sito
Informazioni sul sito

Ancora una volta Esci e salva utilizzando wq. Devi ripetere questo processo per il tuo domain2.com.conf file; assicurati di aggiornare il file NomeServer, ServerAlias, E DocumentRoot per il tuo secondo dominio.

Leggi anche:Apache contro NGINX

 Passaggio 6: abilita il file di configurazione

Il tuo server è impostato per leggere il file 000-default.conf per impostazione predefinita. Ma, nel passaggio precedente, abbiamo creato un nuovo file di configurazione per ciascun dominio. Quindi, dovremo disabilitare il file predefinito e utilizzarne uno adatto al nuovo file di configurazione.

a2dissite 000-default.conf

Puoi mappare il tuo server sui tuoi domini abilitando ciascuno dei file .conf appena creati.

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

Ora riavviamo Apache per registrare le modifiche apportate ad esso.

systemctl restart apache2

Passaggio 7: verifica delle configurazioni di Apache

Dopo aver avviato Apache, puoi vedere che le configurazioni funzionano modificando il tuo file /etc/host sul tuo computer o il DNS del tuo dominio.

Dopo aver impostato ciascun aspetto, puoi visitare il tuo sito web in un browser per vedere le pagine index.html create nel passaggio 3.

Leggi anche: On-premise e cloud

Ospita più siti Web su un server: IIS

Possiamo utilizzare un server Web IIS (Internet Information Services) per dozzine o addirittura centinaia di siti Web. Puoi ospitare più siti Web su di esso, ascoltando e rispondendo sullo stesso porta TCP. Tuttavia, l'interfaccia di Gestione IIS mostra che puoi ospitare un altro sito Web senza associarlo a un'altra porta come 8080. Questa sezione spiegherà come ospitare più siti Web sullo stesso server IIS e associarli alla stessa porta e indirizzo IP o anche a indirizzi IP diversi.

Come installare IIS sul server Windows?

Quando installi IIS su Windows, viene creato un sito Web predefinito vuoto che è in ascolto su porta HTTP web standard – TCP 80. Tecnicamente il nostro sito è vincolato alla porta TCP/80. Dobbiamo inserire il nome del server IIS (“http://web-srv1”) o il suo indirizzo IP (“http://192.168.1.100”) nel tuo browser per poter aprire questo sito.

Passaggio 1: associazione del sito Web IIS 

Un server IIS Web in esecuzione su Windows Server può aiutarti a ospitare più siti Web. Tuttavia, IIS distribuisce correttamente le richieste HTTP solo se ciascun sito Web deve essere identificato con un valore univoco. Il sito Web IIS include tre attributi che costituiscono una combinazione univoca per ciascun sito Web. Questi attributi sono elencati qui:

  • un numero di porta TCP
  • un indirizzo IP
  • un'intestazione host (nome host)

Le informazioni sui siti Web ospitati sono archiviate nel file ServerBinding attributo della metabase IIS e il suo formato è simile al seguente: IP:Porta:Nome host. Quindi, se desideri ospitare più siti Web su un server (stessa porta e stesso indirizzo IP), devi utilizzare un file intestazione host univoca.

Potresti chiederti, cos'è un'intestazione host? Un'intestazione host è una parte di una richiesta HTTP al server che specifica a quale sito Web è indirizzata. Pertanto, dobbiamo menzionare questa intestazione host sul lato server web. Tieni presente che il DNS ha il record corretto che corrisponde al nome host e all'indirizzo IP del server Web IIS.

Supponiamo ora di avere un sito Web in esecuzione sul server IIS e in ascolto sulla porta 80. Cosa fare quando vogliamo associare il secondo sito Web alla stessa porta?

Passaggio 2: associazione del secondo sito Web IIS

Nel Gestore Internet Information Service (IIS), devi creare un altro sito web utilizzando la finestra Aggiungi sito web e chiamarlo TestSite; Questo sito Web si troverà in C:\inetpub\TestSite. Fare attenzione a non specificare ancora il nome host.

Dopo aver copiato il contenuto del sito in C:\inetpub\TestSite apre Gestione Internet Information Service (IIS) e nel nome host del server aggiunge il sito per aprire la procedura guidata.

hostwebsites.png

aggiungi-nuovo-sito-iis
Aggiungi la finestra del sito web

 

Dopo aver fatto clic su Ok, verrà visualizzato un messaggio di avviso che ti informa che non puoi utilizzare rilegatura *:80 per entrambi questi siti web.

aggiungisitoweb

il-rilegatura-80-è-assegnato-a-un-altro-sito
Controlla Rilegatura

Dopo aver accettato questo avviso, avrai un altro sito collegato alla porta 80. Pertanto, non puoi avviarlo senza arrestare il primo sito web. Puoi capirlo di più prestando attenzione alla seguente immagine.

4 Assegnazione di porte vincolanti diverse ai siti Web
Assegnazione di porte vincolanti diverse ai siti Web

windows-originale-vps Hosting VPS Windows

Dai un'occhiata ai nostri convenienti piani VPS Windows, dotati di hardware potente, latenza minima e un Windows gratuito a tua scelta!

Richiedi il tuo Windows gratuito

Hosting di più siti Web sul server IIS tramite intestazioni host

È necessario scegliere un altro nome (nome host) per il secondo sito Web IIS per creare un'associazione univoca. Per fare ciò, fare clic con il tasto destro Sito di prova e seleziona Modificare Legami. Seleziona la rilegatura che ti serve e clicca Modificare.

Come puoi vedere nell'immagine seguente, dovremmo specificare il nome host univoco a cui si rivolge l'utente. In questo tutorial utilizziamo TestSite; quindi inseriamolo nel campo Nome host.

test-iis-site-binding
Finestra Modifica associazione sito

È possibile utilizzare il prompt dei comandi per configurare l'associazione del sito IIS. Se utilizzi IIS 7 o versioni successive, vedresti qualcosa di simile dopo aver eseguito il comando per configurare l'associazione del sito IIS:

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

Similmente al primo sito web, puoi anche avviare il secondo.

sito-iis-iniziale
Gestisci siti web

A questo punto, devi aggiungere un alias DNS per il server (A o CNAME), facendo riferimento all'indirizzo IP o al nome host del tuo server web IIS. Se utilizzi un dominio Active Directory, devi creare record DNS sul controller di dominio. IIS consente di creare un file CNAME registrare il nome TestSite nella console DNS (dnsmgmt.msc) e imposta il nome di dominio del tuo server IIS come host di destinazione FQDN.

creando un record CNAME per il nome TestSite nella console DNS
creando un record CNAME per il nome TestSite nella console DNS

Puoi anche creare questo record DNS tramite PowerShell e il seguente comando:

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

Proviamo ad aprire http://TestSite nel browser. Se tutto è stato eseguito correttamente, dovrebbe aprirsi correttamente.

più siti iis sulla stessa porta http 80
Risultato finale del campo di prova

 

linux-vps Hosting Linux semplificato

Desideri un modo migliore per ospitare i tuoi siti Web e le tue app Web? Sviluppare qualcosa di nuovo? Semplicemente non ti piace Windows? Ecco perché abbiamo Linux VPS.

Ottieni il tuo VPS Linux

Esecuzione di più siti con indirizzi IP diversi sul server IIS

Ora parliamo dell'esecuzione di due siti sul server Web IIS con indirizzi IP diversi. Innanzitutto è necessario aggiungere un'interfaccia VLAN separata su Windows Server o assegnare un indirizzo IP aggiuntivo (alias) alla scheda NIC.

In questo tutorial, il server ha l'indirizzo IP primario 192.168.13.100 e aggiungeremo l'alias IP 192.168.13.101 allo stesso adattatore di rete:

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

Ora devi creare un record A per il tuo nuovo sito sul server DNS:

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

Resta da aprire le impostazioni di Associazione del sito, associando il sito all'indirizzo IP aggiuntivo del tuo host. È possibile gestire l'associazione di siti su un server IIS utilizzando PowerShell. Affinché tutto funzioni, viene utilizzato il modulo WebAdministration:

Import-Module WebAdministration

Puoi visualizzare le informazioni di riproduzione su tutti i siti IIS disponibili e sui relativi collegamenti:

Get-IISSite

O solo su un singolo sito:

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

attacchi.Collezione

Utilizzare il seguente comando per modificare l'associazione di questo sito; tieni presente che ti consente di modificare gli indirizzi IP, la porta o il nome:

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'

È possibile eseguire questo comando per aggiungere una nuova associazione al particolare sito IIS:

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

La rimozione di un'associazione viene eseguita con il seguente comando:

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

Quindi, come hai visto qui, puoi eseguire più siti Web sul server Web IIS sia su indirizzi IP diversi che sullo stesso indirizzo IP e numero di porta TCP.

Considerazione finale: ospitare più siti Web su un server

 Questo articolo si concentra principalmente sui concetti primari dei server, aiutandoti a imparare come ospitare più siti Web su un singolo server. Consegniamo anche multipli VPS Linux soluzioni di hosting, che puoi utilizzare per eseguire diversi siti Web su un server. I piani di Cloudzy riducono il costo di avere più server, ma ti consentono anche di utilizzare i nostri servizi a tuo vantaggio. Inoltre, puoi facilmente aggiornare le risorse del tuo server, inclusi RAM, spazio di archiviazione, processore e larghezza di banda.

Domande frequenti

 

È possibile avere più siti Web su un unico hosting di server Web?

Se disponi di un server grande con risorse estese come spazio sufficiente su HDD, RAM e potenza della CPU, puoi ospitare più siti Web utilizzando l'hosting virtuale. Puoi ospitare un numero illimitato di siti web sul tuo server web.

Come possiamo eseguire due siti Web su un server?

L'hosting di più siti Web su un singolo server Web è chiamato server virtuale. Inoltre, dovresti assicurarti che il server selezionato disponga di risorse sufficienti per gestire i requisiti di traffico e spazio su disco.

A cosa serve un server VPS?

VPS è un servizio di hosting che può fornirti risorse dedicate (private) su un server. Fai attenzione al fatto che utilizzare VPS è una soluzione più sicura e stabile rispetto all'hosting condiviso che non ti dà uno spazio server dedicato.

Perché le persone usano VPS?

L'hosting VPS è diventato una scelta diffusa perché generalmente ha un costo inferiore rispetto all'hosting dedicato e fornisce al contempo affidabilità, sicurezza e prestazioni migliori rispetto all'hosting condiviso.

Condividere

Altro dal blog

Continua a leggere.

Immagine della recensione di Odoo con un testo del titolo di grandi dimensioni a sinistra e il logo Odoo a destra, circondato da pannelli di interfaccia dell'app mobili in uno sfondo a tema nuvola viola tenue.
App Web e aziendali

Una recensione completa su Odoo: Odoo è l'ERP giusto per la tua azienda

Odoo è una delle piattaforme ERP più apprezzate per le aziende in crescita, per un semplice motivo: promette molto in un unico posto. Vendite, contabilità, inventario

Jim SchwarzJim Schwarz 11 minuti di lettura
Le alternative open source a WordPress presentano un'immagine con sfondo sfumato colorato, monitor desktop, editor di codice, anteprima della dashboard sfocata e testo del titolo di grandi dimensioni sulla sinistra.
App Web e aziendali

Le migliori alternative WordPress open source su misura per gli sviluppatori

WordPress è ancora importante e serve ancora bene una vasta gamma di siti. La sua directory dei plugin ospita oltre 62.000 plugin e la sua directory dei temi offre oltre 14.000 temi gratuiti. Sì

Jim SchwarzJim Schwarz 14 minuti di lettura
Immagine in evidenza di Automad e WordPress con i loghi di entrambe le piattaforme e un titolo che chiede quale sviluppatore CMS dovrebbe scegliere.
App Web e aziendali

Automad vs. WordPress: un confronto approfondito tra due delle migliori piattaforme CMS

Automad e WordPress risolvono lo stesso lavoro in due modi molto diversi. Automad è un CMS flat-file e un motore di template, quindi il contenuto risiede in file invece che in un database, ma WordPress,

Jim SchwarzJim Schwarz 9 minuti di lettura

Pronti per la distribuzione? A partire da $ 2,48 al mese.

Cloud indipendente, dal 2008. AMD EPYC, NVMe, 40 Gbps. Rimborso entro 14 giorni.