Настройка виртуального хоста в Apache

Gash1sh

Супер-Модератор
Регистрация
4 Мар 2018
Сообщения
57
Симпатии
20
Лучшие ответы
1
Пол
Мужской
#1
В этой статье мы рассмотрим пример настройки виртуального хоста в apache2.
Для начала обновим локальный кеш пакетов и обновим нашу систему:
apt-get update && apt-get dist-upgrade
Выполните команду ниже для того чтобы установить Apache2:
После завершения этих шагов, мы можем начать настройку виртуальных хостов.

Шаг 1 - Создание структуры директорий
Директории создаем в папке var/www
sudo mkdir -p /var/www/Домаен1
sudo mkdir -p /var/www/Домен2
Выдаем необходимые права на нашу директорию var/www
sudo chmod -R 755 /var/www
Добавляем не рутового пользователя, в качестве владельца сайта:
Где user указываем имя своего пользователя.
Создав пользователя нам нужно выдать ему права на директорию сайта:
sudo chown -R $USER:$USER /var/www/Домен1
sudo chown -R $USER:$USER /var/www/Домен2
Переменная $USER содержит имя пользователя, под которым вы залогинены в текущий момент.

Шаг 3 - Создание демо-страниц для каждого виртуального хоста
Создадим страницу приветствия нашего сайта:
nano /var/www/Домен1/index.html
nano /var/www/Домен2/index.html
Вставив внутрь следующий текст:
<html>
<head>
<title>Приветствуем вас на нашем сайте</title>
</head>
<body>
<h1>Если вы видите данную страницу, значит всё работает :)</h1>
</body>
</html>
Когда закончите, сохраните и закройте файл.
Вы может скопировать файл, чтобы использовать его как основу для второго сайта:
cp /var/www/Домен1/index.html /var/www/Домен2/index.html
После этого вы можете открыть файл и исправить его содержимое при необходимости:
nano /var/www/Домен2/index.html
Теперь у вас есть страницы, необходимые для проверки конфигурации виртуальных хостов.

Шаг 4 - Создание файлов нового виртуального хоста
По умолчанию, Apache имеет файл виртуального хоста 000-default.conf, в папке /etc/apache2/sites-available.
Скопируем его:
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/Домен1.conf
Откройте новый файл в редакторе с root-правами:
sudo nano /etc/apache2/sites-available/Домен1.conf
Вставим туда следующее:
<VirtualHost *:80>
#Указываем адресс почты
ServerAdmin admin@example.ru
#Меняем на имя домена/поддомена
ServerName Домен1
ServerAlias Домен1
#Ресположение корневого каталога домена
DocumentRoot /var/www/Домен1
#Логи
ErrorLog /var/www/example.ru/logs/error_apache2.log
CustomLog /var/www/example.ru/logs/access_apache2.log combined
</VirtualHost>
Сохраняем и закрываем файл.
Проделываем тоже самое и для 2го домена при необходимости.

Шаг 5 - Включение новых виртуальных хостов
Мы можем использовать утилиту a2ensite для включения каждого из наших сайтов следующим образом:
sudo a2ensite Домен1.conf
sudo a2ensite Домен2.conf
После завершения необходимо перезапустить Apache, чтобы изменения вступили в силу:

Переходим на наш сайт(ы) , и если всё работает, то вы увидите страницу приветствия, которую мы создавали ранее.
Спасибо за внимание.
 

neygomon

Его Темнейшество :j
Администратор
Регистрация
8 Июн 2017
Сообщения
1.090
Симпатии
448
Лучшие ответы
1
Пол
Мужской
#2
но лучше использовать nginx + php-fpm
 
Сверху