apache ubuntu Настройка виртуального хоста -- сайта на локальной машине. Инструкция
Primary tabs
ПРИМЕЧАНИЕ: Если вы добавляете уже не первый виртуальный хост, учитывайте что под каждый хост (сайт) требуется создавать свой конфигурационный файл.
Настройка виртуального хоста
Apache уже поставляется с виртуальным хостом 000-default.conf, использующимся по умолчанию. Мы создадим еще один файл конфигурации с имененем вида:
SITENAME.loc.conf
где:
- SITENAME -- вместо этой строки (здесь и далее) предлагается указать имя вашего сайта (обычно латинскими маленькими буквами).
Например: если вы хотите развернуть локальную копию сайта example.com, то лучше чтобы не путаться на локальной машине присвоить егму домен example.loc (то есть в этом случае мы как бы сделали замену SITENAME = example)
-- этот конфигурационный файл (c именем, например, mysite.loc.conf) будет использоваться для нашего домена mysite.loc и содержать информацию о его настройках, для этого выполним команду создания и одновременно открытия на редактирования этого файла (используется утилита nano):
sudo nano /etc/apache2/sites-available/SITENAME.loc.conf
Затем разместим в файле информацию о настройках, минимальный конфиг:
<VirtualHost *:80> ServerName SITENAME.loc DocumentRoot /var/www/имяпапкисайта <Directory /var/www/имяпапкисайта> AllowOverride All </Directory> CustomLog /var/log/apache2/SITENAME.access.log common ErrorLog /var/log/apache2/SITENAME.error.log LogLevel warn </VirtualHost>
Или можно еще указать какое-то дополнительное имя сайта (не обязательно) с помощью опции
-- в настройках выше предлагается (сделано):
- имяпапкисайта -- имя папки, в которой лежит index.php (или иной т.н. скрипт по-умолучанию, подробнее см. в примечании ниже)
- /var/log/apache2/ -- стандартная папка в ubuntu для хранения логов apache.
И сохраним его.
ПРИМЕЧАНИЕ: Значение, которые мы указываем для параметра DocumentRoot (напр /var/www/mysite22) называют "корнем сайта" (а директорию называют "корневой"), т. к. именно от нее отсчитывают отностельные URL разных ресурсов/страниц сайта.
Разрешаем обращаться к домену
Для того чтобы использовать домен необходимо выполнить следующую команду, которая создает символическую ссылку из sites-available/ в sites-enabled/ для активации созданного Вами виртуального хоста:
sudo a2ensite SITENAME.loc
После чего перезагружаем Apache:
sudo service apache2 reload
Правка в hosts
Далее добавим в hosts:
sudo nano /etc/hosts
строчку:
127.0.0.1 SITENAME.loc
-- это добавление скажет нашей операционной системе, что сайт SITENAME.loc (с таким доменным имененем) лежит на нашей же машине.
Куда помещать файлы сайта
Теперь размещать файлы можно в папке:
/var/www/
А для настроенного нами сайта в:
/var/www/SITENAME
(на самом деле имя папки может быть вообще любым -- но важно чтобы именно пусть к ней был указан в опциях DocumentRoot и Directory конфиг. файла вашего виртуального хоста (см. пример выше -- но для понятности имя папки часто делают похожим на имя домена).
Как открыть сайт в браузере
Посмотрим выше -- в конфиге виртуального хоста мы написали что-то вроде:
ServerName site2.loc
(т.е. взяли фактически что SITENAME = site2.loc
)
-- тогда то же самое доменное имя (у меня site2.loc) мы должны были связать с ip локальной машины в файле hosts:
127.0.0.1 site2.loc
-- после всего этого мы можем открыть сайт в браузере, набрав в адресной строке:
http://site2.loc
Автоматическое создание хоста (не для начинающих)
Есть и автоматизированное средство.
Видео-пояснения
- Настройка ключа для соединения по SSH с github.com: https://youtu.be/yRL44KGlBgM
- Log in to post comments
- 9474 reads
vedro-compota
Mon, 09/25/2017 - 12:20
Permalink
site ... does not exist? -- ошибка как исправить
например:
Убетесь, что имя конфигурационного файла для виртуального хоста имеет вид:
(см. подробности выше)
_____________
матфак вгу и остальная классика =)
vedro-compota
Sat, 11/02/2019 - 14:50
Permalink
через FPM
читайте про работу (настройку) через fpm: http://fkn.ktu10.com/?q=node/11139
_____________
матфак вгу и остальная классика =)
vedro-compota
Mon, 11/21/2022 - 18:42
Permalink
использование псевдонима
если нужно указать несколько доменных имен можно использовать псевдонимы (один или несколько), которые задаются через опцию ServerAlias:
_____________
матфак вгу и остальная классика =)