И так, приступим.
Для примера создадим виртуальный хост для домена devreadwrite.com
1. Создадим каталог для хранения и работы с файлами проекта, открываем консоль и вводим следующую команду:
sudo mkdir -p /var/www/devreadwrite.com/html
2. Далее необходимо дать права доступа к созданному каталогу. Нам необходимо изменить владельца этой директории на обычного пользователя:
sudo chown -R $USER:$USER /var/www/devreadwrite.com/html/
Переменная "$USER" указывает на вошедшего в систему пользователя.
3. Установим разрешение на чтение к корневой веб-директории (/var/www/devreadwrite.com/html), чтобы любой мог читать файлы из этого каталога:
sudo chmod -R 755 /var/www/devreadwrite.com/html
4. Далее клонируем конфигурацию Apache по умолчанию и создадим файл devreadwrite.com.conf:
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/devreadwrite.com.conf
5. Открываем новый конфигурационный файл и обновляем значения для ServerName, ServerAlias и DocumentRoot. Где ServerName это имя виртуального хоста и ServerAlias это www версия. DocumentRoot это абсолютный путь к каталогу, где находится ваш проект:
<VirtualHost *:80> ServerName devreadwrite.com ServerAlias www.devreadwrite.com ServerAdmin webmaster@devreadwrite.com DocumentRoot /var/www/devreadwrite.com/html </VirtualHost>
6. Далее необходимо включить новую конфигурацию виртуального хоста:
sudo a2ensite devreadwrite.com.conf
Для отключения виртуального хоста используйте a2ensite вместо a2ensite.
7. Добавляем домен в файл хостов. Для этого открываем его для редактирования:
sudo nano /etc/hosts
И добавляем виртуальный хост доменов один за другим:
127.0.0.1 devreadwrite.com 127.0.0.1 www.devreadwrite.com
8. И последний шаг, перезапускаем Apache:
sudo service apache2 restart
Все, виртуальный хост для домена devreadwrite.com настроен. Не забудьте при настройке поменять домен devreadwrite.com на свой. Всем удачи.
Комментарии
Для отключения виртуального хоста используйте a2dissite вместо a2ensite.
ОтветитьЯ бы сделал так, https и http в одном флаконе:
Ответить<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /home/userName/public_html/domain.name/www/
ServerName domain.name
ServerAlias www.domain.name
ErrorLog /home/userName/public_html/domain.name/logs/error.log
CustomLog /home/userName/public_html/domain.name/logs/access.log combined
<directory "/home/userName/public_html/domain.name/www/">
Options All
AllowOverride All
Require all granted
</directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/userName/public_html/domain.name/www/
ServerName domain.name
ServerAlias www.domain.name
ErrorLog /home/userName/public_html/domain.name/logs/error.log
CustomLog /home/userName/public_html/domain.name/logs/access.log combined
<directory "/home/userName/public_html/domain.name/www/">
Options All
AllowOverride All
Require all granted
</directory>
</VirtualHost>
Меняем userName - на свое имя пользователя и domain.name - на свой локальный домен