Apache HTTP сървър, известен преди като Apache Web Server, е безплатен софтуер с отворен код, разработен и поддържан от Apache Software Foundation. Това е мощен и един от най-популярните уеб сървъри в света.
В този урок ще ви насочим към настройването на виртуални хостове на Apache на Ubuntu 18.10. Като цяло, Virtual Host се използва за хостинг на редица уебсайтове на един и същ уеб сървър. Ако се интересувате от настройка на Apache HTTP сървър, преминете към нашето поетапно ръководство за настройка на Apache HTTP уеб сървър в Ubuntu.
Настройване на виртуални хостове на Apache на Ubuntu
Има два вида виртуални хостове, които можем да конфигурираме в Apache.
- Един сървър Apache, един IP и множество уебсайтове => базирани на имена виртуални хостове
- Един сървър Apache и уникален IP за всеки уеб сайт => IP базиран виртуален хостинг
IP базиран виртуален хост можем да конфигурираме само един уебсайт на един IP адрес. Ако трябва да хоствате множество уебсайтове, трябва да имате множество IP адреси за този уеб сървър. Виртуалният хост, базиран на имена, обикновено се използва за хостване на множество уебсайтове на един сървър.
В този урок, Тук ще обсъдим как да създадем базирани на имена виртуални хостове.
Конфигуриране на базирани на име Apache виртуални хостове
Коренът на документа е директория за съхраняване на файлове на уебсайтове за име на домейн за обслужване в отговор на заявки.
1. Задаване на структура на директорията
В нашето ръководство ще използваме следната структура на директориите, но можете да изберете да я промените на всяко място, което искате.
/ var / www /
├── fosslinuxexample1.com
│ └── public_html
├── fosslinuxexample2.com
│ └── public_html
Тъй като ще хостваме два уебсайта, ще трябва да създадем две директории под / var / www директория.
Стартирайте терминала и нека започнем да създаваме директория за fosslinuxexample1.com
sudo mkdir -p / var / www / html / fosslinuxexample1.com / public_html
Създайте директория за fosslinuxexample2.com
sudo mkdir -p / var / www / html / fosslinuxexample2.com / public_html
Променете собствеността на директорията на потребителя на apache (www-data)
sudo chown -R www-data: / var / www / html / fosslinuxexample1.com / public_html sudo chown -R www-data: / var / www / html / fosslinuxexample2.com / public_html
2. Задаване на разрешения за папки
sudo chmod -R 755 / var / www / html / fosslinuxexample1.com / public_html sudo chmod -R 755 / var / www / html / fosslinuxexample2.com / public_html
3. Създаване на уеб страници
Сега нека създадем уеб страници за всеки хост. В моя пример ще създам уеб страница за fosslinuxexample1.com
sudo vim / var / www / html / fosslinuxexample1.com / public_html / index.html
Добавете следното съдържание към индекса.html файл. Това е основно HTML съдържание.
fosslinuxexample1.com Тестова страница Здравейте, Това е тестова страница за fosslinuxexample1.com уебсайт
Време е да запазите и затворите файла.
По същия начин ще създадем уеб страница за fosslinuxexample2.com.
sudo vim / var / www / html / fosslinuxexample2.com / public_html / index.html
Добавете следното съдържание към файла.
fosslinuxexample2.com Тестова страница Здравейте, Това е тестова страница за fosslinuxexample2.com уебсайт
Запазете и затворете файла.
4. Създаване на виртуални хостове
Като цяло конфигурационните файлове на Apache Virtual Hosts се съхраняват в / etc / apache2 / sites-available директория и / etc / apache2 / sites-enabled директория. Започнете със създаването на виртуален хост за fosslinuxexample1.com.
sudo vim / etc / apache2 / sites-available / fosslinuxexample1.com.конф
Добавете съдържанието по-долу към файла.
Име на сървър fosslinuxexample1.com ServerAlias www.fosslinuxexample1.com ServerAdmin уеб администратор @ fosslinuxexample1.com DocumentRoot / var / www / html / fosslinuxexample1.com / public_html Опции -Индекси + FollowSymLinks AllowOverride All ErrorLog $ APACHE_LOG_DIR / fosslinuxexample1.com-грешка.регистрирайте CustomLog $ APACHE_LOG_DIR / fosslinuxexample1.com-достъп.дневник комбиниран
Запазете и излезте от файла. В подобни редове създайте виртуален хост за fosslinuxexample2.com
sudo vim / etc / apache2 / sites-available / fosslinuxexample2.com.конф
Добавете съдържанието по-долу към втория уебсайт.
Име на сървър fosslinuxexample2.com ServerAlias www.fosslinuxexample2.com ServerAdmin уеб администратор @ fosslinuxexample2.com DocumentRoot / var / www / html / fosslinuxexample2.com / public_html Опции -Индекси + FollowSymLinks AllowOverride All ErrorLog $ APACHE_LOG_DIR / fosslinuxexample2.com-грешка.регистрирайте CustomLog $ APACHE_LOG_DIR / fosslinuxexample2.com-достъп.дневник комбиниран
Запазете и излезте от файла.
5. Активиране на файлове за конфигуриране на виртуален хост
Има различни начини за активиране на виртуални хостове. Най-простият начин е да активирате виртуалния хост, като използвате a2ensite команда. Като алтернатива можете да го активирате, като създадете символни връзки към директорията / etc / apache2 / sites-enabled.
Сега трябва да деактивираме 000-по подразбиране.конф и активирайте новосъздадените виртуални хост файлове
Използвайте този команден ред, за да деактивирате виртуалния хост по подразбиране.
sudo a2dissite 000-по подразбиране.конф
Следните команди ще активират нови виртуални хостове.
sudo a2ensite fosslinuxexample1.com.conf sudo a2ensite fosslinuxexample2.com.конф
Активирайте виртуалния хост, създавайки символни връзки.
Ако сте активирали виртуален хост, използвайки a2ensite команда няма нужда да се изпълнява под команди:
sudo ln -s / etc / apache2 / sites-available / fosslinuxexample1.com.conf / etc / apache2 / sites-enabled / sudo ln -s / etc / apache2 / sites-available / fosslinuxexample2.com.conf / etc / apache2 / sites-enabled /
Проверете синтаксиса на конфигурационните файлове.
sudo apachectl configtest
Рестартирайте Apache, за да активирате новата конфигурация.
sudo systemctl рестартирайте apache2
6. Тестване на виртуални хостове
Преди да тестваме уеб страниците, трябва да променим / etc / hosts файл за конфигуриране на IP на сървъра.
sudo vim / etc / hosts
Добавете следния ред към файла hosts. Не забравяйте да замените 10.94.12.217 в командните редове по-долу с вашия сървър IP. Когато сте готови, запазете и затворете файла.
10.94.12.217 fosslinuxexample1.com 10.94.12.217 fosslinuxexample2.com
И накрая, стартирайте любимия си уеб браузър и започнете да разглеждате уебсайтовете!
fosslinuxexample1.com
fosslinuxexample2.com
Ако можете да видите създадените от вас уеб страници, поздравления, успешно сте създали виртуалните хостове. Имам въпроси? Как ти се получи?