Sådan hoster du flere websites på en VPS

I denne vejledning skal vi give dig trinvise instruktioner om hvordan man er vært for flere websteder på en enkelt IP-adresse med Apache eller Nginx på en Ubuntu VPS eller CentOS 7 VPS. Hosting flere domæner / underdomæner på en VPS er ret nemt at bruge virtuelle værter i Apache eller bruge serverblokke i Nginx.

Apache Virtual Hosts

Virtuelle værter i Apache tillader brugere at køre flere websites ud af en IP-adresse samt finjustere indstillinger for hver hjemmeside.

For at konfigurere virtuelle værter i Apache at være vært for flere domæner / underdomæner, log ind på din server via SSH og installer Apache:

Ubuntu eller Debian:

apt-get-opdatering apt-get-installation apache2

CentOS eller Fedora:

yum opdatering yum installer httpd

Opret en sikkerhedskopi af Apache-konfigurationen, og opret derefter virtuelle værtsdirektiver til dine websteder:

Ubuntu eller Debian:

Rediger den primære Apache konfigurationsfil (/etc/apache2/apache2.conf) og uncomment den følgende linje, hvis det ikke allerede er gjort det (# er kommentarer i Apache conf files):

vi /etc/apache2/apache2.conf IncludeOptional sites-enabled / *. conf

CentOS eller Fedora:

Rediger den primære Apache konfigurationsfil (/etc/httpd/conf/httpd.conf) og uncomment følgende linje:

vi /etc/httpd/conf/httpd.conf
NameVirtualHost *: 80

Vær opmærksom på, at "NameVirtualHost" -direktivet allerede er aktiveret som standard på Ubuntu 16.04 og CentOS 7.

Opret virtuelle værter i Apache for hvert domæne / underdomæne. For eksempel oprette virtuelle værter til domain1.com og domain2.com:

Ubuntu eller Debian:

vi /etc/apache2/sites-available/domain1.conf

<VirtualHost *: 80>
DocumentRoot "/ var / www / html / domain1"
Servernavn domæne1.com
ServerAlias ​​www.domain1.com

# Indtast andre direktiver her, fx:

<Katalog / var / www / html / domain1 />
Indstillinger FollowSymLinks
AllowOverride All
Ordre tillade, benægte
tillade fra alle

</ Directory>
ErrorLog /var/log/apache2/domain1.com-error_log
CustomLog /var/log/apache2/domain2.com-access_log almindeligt
</ VirtualHost>

vi /etc/apache2/sites-available/domain2.conf

<VirtualHost *: 80>
DocumentRoot "/ var / www / html / domain2"
Servernavn domæne2.com
ServerAlias ​​www.domain2.com

# Indtast andre direktiver her
</ VirtualHost>

Aktivér 'domain1.conf' og 'domain2.conf' konfigurationer i Apache ved hjælp af:

ln -s /etc/apache2/sites-available/domain1.conf /etc/apache2/sites-enabled/domain1.conf ln -s /etc/apache2/sites-available/domain2.conf / etc / apache2 / sites-aktiveret /domain2.conf

Eller brug kommandoen a2ensite til at aktivere konfigurationerne 'domain1.conf' og 'domain2.conf' i Apache:

sudo a2ensite domain1.conf sudo a2ensite domain2.conf

Genstart Apache for ændringerne træder i kraft:

service apache2 genstart

CentOS eller Fedora:
Rediger den primære Apache konfigurationsfil (/etc/httpd/conf/httpd.conf) og tilføj virtuelle værter i slutningen:

vi /etc/httpd/conf/httpd.conf

<VirtualHost *: 80>
DocumentRoot "/ var / www / html / domain1"
Servernavn domæne1.com
ServerAlias ​​www.domain1.com
# Indtast andre direktiver her
</ VirtualHost>
<VirtualHost *: 80>
DocumentRoot "/ var / www / html / domain2"
Servernavn domæne2.com
ServerAlias ​​www.domain2.com
# Indtast andre direktiver her
</ VirtualHost>

Genstart Apache for ændringerne træder i kraft:

service httpd restart

Opret / var / www / html / domain1 og / var / www / html / domain2 mapper, og upload derefter dine hjemmesider til dem.

Alle webstedsfiler skal læses af webserveren, så angiv et rigtigt ejerskab:

Ubuntu eller Debian:

chown www-data: www-data -R / var / www / html / domain *

CentOS eller Fedora:

chown apache: apache -R / var / www / html / domæne *

Nginx Server Blocks

For at konfigurere serverblokke i nginx til at være vært for flere domæner / underdomæner ved hjælp af en enkelt IP-adresse, log ind på din server via SSH og installer nginx:

Ubuntu eller Debian:

apt-get opdatering apt-get install nginx

CentOS eller Fedora:

yum opdatering yum installer nginx

Opret en sikkerhedskopi af nginx-konfigurationen, og opret en serverblok til den første hjemmeside:

Ubuntu eller Debian:

Opret en ny nginx-konfiguration for det første domæne:

vi /etc/nginx/sites-available/domain1.conf

Tilføj følgende linjer til det:

server {lyt 80; servernavn domæne1.com; root /var/www/html/domain1.com; index index.html index.htm index.php; placering / {try_files $ uri $ uri / = 404; } # tilføj andre direktiver her; }

CentOS eller Fedora:

Kør følgende kommandoer:

mkdir / etc / nginx / sites-tilgængelig mkdir / etc / nginx / sites-aktiveret

Tilføj følgende linjer til den vigtigste nginx konfigurationsfil (/etc/nginx/nginx.conf) i slutningen af ​​HTTP-blok:

vi /etc/nginx/nginx.conf
inkludere /etc/nginx/sites-enabled/*.conf;

Opret en ny nginx-konfigurationsfil til den første hjemmeside:

vi /etc/nginx/sites-available/domain1.com
server {lyt 80; servernavn domæne1.com; root /var/www/html/domain1.com/; index index.html index.htm index.php; placering / {try_files $ uri $ uri / = 404; } # tilføj andre direktiver her; }

Aktivér 'domain1.conf' konfigurationer i nginx ved hjælp af:

sudo ln -s /etc/nginx/sites-available/domain1.com / etc / nginx / sites-enabled /

Genstart nginx for ændringerne træder i kraft:

service nginx genstart

Upload hver hjemmeside til den rodkatalog, der er angivet i nginx-serverblokken, for eksempel:

mkdir -p / var / www / html / domain1

Indstil et korrekt ejerskab af webstedsfiler, så de kan være tilgængelige af nginx webserveren (f.eks. Www-data):

chown -R www-data: www-data / var / www / html / domain1

Det er det. Gentag samme procedure for hver ekstra hjemmeside.

Bemærk, at for hvert domæne eller underdomæne, du vil være vært for på din server, skal du oprette en A-post, der peger på din serverens IP-adresse, og når DNS'en ændres fuldt ud i hele internettet, skal dine besøgende på internettet have adgang til din websteder, der bruger en webbrowser.

Kilde

Giv en kommentar

Dette websted bruger Akismet til at reducere spam. Lær, hvordan dine kommentardata behandles.