После установки Apache при заходе по IP на сервер, где он установлен, мы можем увидеть радостное рапортование о том, что сервер работает:
It works!
Отлично! Теперь можно заняться заливкой сайта на сервер. И, если у вас на сервере планируется только один сайт (домен), то вы можете положить скрипты прямо в /var/www/
(там пока что лежит только index.htm
с текстом «<h1>It works!</h1>
«). Всё будет работать. Но сайт будет только один.
Если несколько доменов разрешаются в IP этого сервера (с помощью DNS), обращаясь по любому из них, вы увидите свой сайт.
Можно в скрипте, которому передаётся управление при обращении к серверу, узнать имя host’а, к которому обращались, однако, apache может это делать сам и удобнее (для нас), достаточно лишь настроить его.
В основном конфигурационном файле apache (/etc/apache2/apache2.conf) нужно прописать сайты, которые вы планируете держать в виде виртуальных хостов.
NameVirtualHost Ваш_IP:80 <VirtualHost Ваш_IP:80> DocumentRoot Директория_вашего_сайта # я обычно делаю так: /var/www/useunix.ru ServerName Ваш_домен ServerAlias www.Ваш_домен # чтобы склеить www и no-www версии </VirtualHost>
И так 3 раза в день после еды для каждого домена (кроме строчки «NameVirtualHost
«).
Здесь же можно указать ещё кучу параметров (e-mail админа, правила доступа), но это требуется обычно уже для больших проектов… А, если вам понадобилось это руководство, то, скорее всего, вы только начинаете
Также, если у вас несколько IP, которые должны обеспечивать доступ к сайту, то Ваш_IP можете заменить на звёздочку (*). Порт также можно опустить.
Возможно, потребуется поставить «Listen 80
» выше NameVirtualHost
, однако, когда я стартовал apache, на меня заругались, мол уже слушаем 80 порт…
Ну и не забудьте, что каждый домен должен разрешаться DNS-сервером в IP вашего компьютера.
Надо заметить что способ описан для apache 1.x, для версии 2.x правильно будет
sudo a2ensite mynewsite
маны https://help.ubuntu.com/6.10/ubuntu/serverguide/ru/httpd.html
Данный способ работает на обеих версиях (год что ли поставить, чтобы линки спамили аккуратней…). Единственное, если у вас тьма сайтов и вам приятнее копаться в куче файлов, а не строчек, то да, конечно, ensite приятней…