• Дигитални аксесоари
  • сървър
  • Дигитален живот
  • Политика за поверителност
  • Свържете се с нас
  1. Home
  2. Article
  3. Конфигуриране на виртуален хост Apache на Ubuntu 20.04 LTS – Технически блог

Конфигуриране на виртуален хост Apache на Ubuntu 20.04 LTS – Технически блог

Rsdaa 24/01/2022 1128

В този урок ще конфигурираме виртуален хост Apache на Ubuntu 20.04 LTS.

Какво е виртуален хост? И неговите употреби.

Е, терминът виртуален хост се отнася до практиката на стартиране на повече от един уеб сайт като company1.example.com и company2.example.com и така нататък в рамките на една машина. Виртуалните хостове могат да бъдат „базирани на IP“, което означава, че имате различен IP адрес за всеки уеб сайт, или „базирани на имена“, което означава, че имате множество имена, работещи на един и същ IP адрес.

И така, факт е, че те работят на един и същ физически сървър, но това не е очевидно за крайния потребител. Означава, че Company1 няма достъп до файловете на Company 2 и всичко, което се случва вътре. По този начин той е сигурен и надежден.

В реалния свят често наричаме този метод споделен уеб хостинг. Цената за споделен уеб хостинг е много по-ниска от цената на специален уеб сървър, тъй като много клиенти могат да бъдат хоствани на един сървър.

ВИДЕО

Предпоставка:

Тук използвахме ubuntu 20.04 LTS за този експеримент, приложим е и за 16.04 и по-нови версии.

Стъпки за конфигуриране на виртуален хост на Apache:

Отворете своя терминал и актуализирайте списъка с пакети Инсталирайте Apache сървър Създаване на потребители на виртуален хост Създаване на индексен файл Конфигуриране на директиви за виртуален хост Добавяне на локален DNS ResolverТест на виртуален хост

Стъпка-1) Актуализиране на списъка с пакети< /h3>

Първото нещо е, актуализирайте своя списък с пакети. Продължете и въведете

sudo apt update

Стъпка-2) Инсталирайте Apache HTTP сървър

След като актуализирате списъка с пакети, трябва да имате инсталиран apache във вашата система.

sudo apt install apache2

След като инсталирате Apache, можете да проверите дали работи перфектно или не, като използвате командата service

статус на услугата apache2

Стъпка-3) Създаване на потребител за виртуален хост

Сега ще създадем двама потребители за този експеримент, единият е userA, а другият е userB. Да отидем и да напишем

sudo useradd -m userAsudo useradd -m userB

Тук флагът -m ще създаде домашната директория на потребителя, ако тя не съществува. Сега създайте директория с име public_html в директорията на всеки потребител. Продължете и въведете

sudo mkdir /home/userA/public_htmlsudo mkdir /home/userB/public_html

Сега имаме public_html директория под директорията на всеки потребител.

Стъпка-4) Създаване на индексен файл

Сега трябва да поставите текст за маркиране в public_html, за да идентифицирате вашия виртуален хост. И така, ще създадем файл index.html в директорията public_html. Продължете и въведете

sudo nano /home/userA/public_html/index.html

И поставете този маркиращ текст и запазете файла.

<html> <head><title>Добре дошли в abc.com</title> </head> <body><h1>Здравейте! Добре дошли в страницата abc.com</h1> </body></html>

По подобен начин направете същото за потребител B.

sudo nano /home/userA/public_html/index.html<html> <глава> <title>Добре дошли в xyz.com</title> </head> <тяло> <h1>Здравейте! Добре дошли на страницата xyz.com</h1> </body></html>

Сега всеки потребител имаше своя индекс файл, готов за обслужване през apache.

Стъпка-5) Създаване на Apache Virtual Host Config

Сега е време да създадете vhost конфигурационен файл за всеки потребител, продължете и въведете

sudo nano /etc/apache2/site-available/abc.com.conf.

И така, сега трябва да кажете на apache за вашия vhost и неговата конфигурация. Всъщност те се наричат ​​тагове и директиви.

<VirtualHost *:80> ServerAdmin [имейл защитен]com ServerName abc.com Псевдоним на сървъра www.abc.com DocumentRoot /home/userA/public_html/<Директория /home/userA/public_html/> Опции Индекси FollowSymLinks AllowOverride None Изискване на всички предоставени</Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log комбинирано</VirtualHost>

И така, приблизително това е стандартна структура на виртуален хост, която направих тук, и моята препоръка е първо да разберете вашите нужди и след това да поставите конфигурацията. Не копирайте и поставяйте сляпо от който и да е урок във вашия производствен сървър. Това може да доведе до бедствие по всяко време.

Или можете да научите повече за директивите и примерите за виртуален хост в документацията на apache, просто отворете документацията.

Сега ще създадем друга конфигурация на виртуален хост за xyz.com

sudo nano /etc/apache2/site-available/xyz.com.conf.<VirtualHost *:80> ServerAdmin [имейл защитен]com ServerName abc.com Псевдоним на сървъра www.abc.com DocumentRoot /home/userA/public_html/<Директория /home/userA/public_html/> Опции Индекси FollowSymLinksAllowOverride NoneRequire all granted</Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log комбиниран</VirtualHost>

И така, след всички тези неща трябва да активирате сайтовете си. Продължете и въведете

sudo a2ensite abc.comsudo a2ensite xyz.com

И накрая рестартирайте apache, въведете

sudo systemctl рестартирайте apache2.

Стъпка-6) Добавяне на локален DNS преобразувател

Сега, едно последно нещо, от което се нуждаете, е локален DNS преобразувател, тъй като ние сме в локална среда, така че редактирайте своя hosts файл с помощта на nano редактор и добавете локален DNS запис за всеки хост. И ако сте в производствена среда, насочете публичния си IP към вашия DNS мениджър.

sudo nano /etc/hosts

И добавете следните редове в края

127.0.0.1 abc.com127.0.0.1 xyz.com

Стъпка-7) Тествайте своя виртуален хост

Накрая тествайте настройките си, отворете уеб браузъра и отворете xyz.com и можете вижте уеб страницата, обслужвана от xyz vhost.

Също така отворете друг раздел настрани и напишете abc.com и тази страница, обслужваща формата abc vhost.

Можете да следвате 7 най-добри практики за сигурност на Apache:

Поддържайте своя Apache актуализиран с най-новите версии и корекции Деактивирайте списъка с директории Деактивирайте ненужните модули Деактивирайте ненужните услуги Уверете се, че информацията за сървъра на Apache е деактивирана Деактивирайте Trace HTTP Request Разпределете собствеността и не стартирайте Apache като 'root'

Надявам се този урок да ви е полезен. Оставете коментар, ако имате въпроси. Също така щракнете върху бутона за абониране, за да ни насърчите и да получите най-новата актуализация. Благодаря ти.

Следните два раздела променят съдържанието по-долу.

Харесвам програмирането и новите технологии. И работа с Linux.

Свързани


PREV: Съобщения за грешка на VNC Connect

NEXT: Свързване към сървър за отчети в Management Studio - SQL Server ...

Popular Articles

Hot Articles

Navigation Lists

Back to Top