Как да хоствате множество уебсайтове с виртуални хостове Apache
Въведение
Виртуалните хостове на Apache могат да изпълняват множество уебсайтове на един сървър. В тази статия ще научите как да хоствате множество уебсайтове, включително поддомейни.
Моят Ubuntu 20.04 сървър има някои файлове в директорията /etc/apache2/sites-available. Ще създадем още файлове в тази директория, за да създадем множество виртуални хостове.
$ ls /etc/apache2/sites-available000-default.conf 000-default-le-ssl.confdefault-ssl.conf000-default.conf.dpkg-distСъздаване на нов виртуален хост
Нека създадем виртуален хост за example.com. (Трябва да промените example.com на вашето име на домейн.) Ние съхраняваме файлове в директорията /var/www/example.com/public_html. Ако искате да внедрите уебсайта си с помощта на Git, моля, вижте тази статия „Как да създадете Git Hook за изпращане към вашия сървър и Github Repo“.
Копирайте 000-default.com.conf, за да създадете нов файл в /etc/apache2/sites-available:
$ cd /etc/apache2/sites-available$ sudo cp 000-default.com.conf example.com.confВ example.com.conf :
Ред 2: Добавете имейла си за ServerAdmin. Ред 3: Използвайте името на вашия домейн за ServerName.Ред 4: Добавете www към името на вашия домейн за ServerAlias.Line 5 & 6: Добавете файловата директория за DocumentRoot.
a2ensite активира посочения сайт в конфигурацията на apache2. Той създава символна връзка в /etc/apache2/sites-enabled (не е sites-available).
$ sudo a2ensite example.com.confГорната команда ще създаде символна връзка, example.com.conf, в директорията /etc/apache2/sites-enabled.
Това ще търси в /etc/apache2/sites-available, за да намери същия файл име. Ако не може да го намери, ще ви помоли да изберете conf файла.
Това ще създаде example.com-le-ssh.conf.
Ако вашият DNS е конфигуриран правилно, трябва да можете да видите своя домейн.
Поддомейни
Ще създадем виртуален хост за поддомейн. Процесът е същият като в предишния раздел.
Ние съхраняваме уеб файлове в /var/www/newsletter.example.com/public_html.
Копираме 000-default.com.conf, за да създадем нов файл newsletter.example.com.conf.
$ sudo cp 000-default.com.conf newsletter.example.com.confРедактирайте newsletter.example.com.conf:
Разликите от предишния са добавянето на поддомейн към ServerName, ServerAlias, DocumentRoot и Directory.
Нека активираме виртуален хост и SSL за този поддомейн.
sudo a2ensite newsletter.example.com.confsudo certbot --apache -d newsletter.example.com -d www.newsletter.example.comАко използвате namecheap.com, отидете на Списък с домейни > Разширен DNS и добавете нов запис.
Може да отнеме 24–48 часа.
Проверете вашия DNS чрез https://www.whatsmydns.net/. Ако сте го конфигурирали правилно, той показва вашия IP адрес.
etc/apache2/sites-available
Вече имате следните файлове в директорията за достъпни сайтове.
ls /etc/apache2/sites-available/000-default.conf000-default.conf.dpkg-distdefault-ssl.conf000-default-le-ssl.conf example.com.confexample.com-le-ssl.conf бюлетин. example.com.conf newsletter.example.com-le-ssl.confxxxx-le-ssl.conf файловете са за вашия SSL.
Как да премахнете виртуален хост
Използвайте командата a2dissite, за да деактивирате съществуващите виртуални хостове.
$ sudo a2dissite 000-default.conf$ sudo a2dissite 000-default-le-ssl.confТук деактивирате 000-default.conf и неговите SSL виртуални хостове.
Заключение
Сега знаете как да създавате виртуални хостове на вашия сървър. Това ви позволява да хоствате колкото искате уебсайтове на един сървър.
Ако харесвате статията ми и искате да получавате бюлетини, моля, регистрирайте се.
Получете пълен достъп до всяка история в Medium, като станете член.
Препратки
PREV: Най-бързите DNS сървъри за Ps4 - 2020 г. [Само най-добрият DNS] - PS4DNS.COM
NEXT: Намиране на най-добрия DNS за PS4 през 2021 г. | TechyThing