Поиск по сайту:

Как настроить виртуальные хосты Apache в Ubuntu 12.04 LTS


Статус: устарело

В этой статье рассматривается версия Ubuntu, которая больше не поддерживается. Если вы в настоящее время используете сервер под управлением Ubuntu 12.04, мы настоятельно рекомендуем обновить или перейти на поддерживаемую версию Ubuntu:

  • Обновите Ubuntu до версии 14.04.
  • Обновление Ubuntu 14.04 до Ubuntu 16.04
  • Перенесите данные сервера в поддерживаемую версию.

Причина:

См. вместо этого:

Что означает красный цвет

Строки, которые пользователь должен ввести или настроить, будут выделены красным цветом в этом руководстве! Остальное в основном должно быть доступно для копирования и вставки.

О виртуальных хостах

Виртуальные хосты используются для запуска более одного домена с одного IP-адреса. Это особенно полезно для людей, которым необходимо запустить несколько сайтов с одного виртуального частного сервера. Сайты отображают посетителям различную информацию в зависимости от того, с помощью чего пользователи заходили на сайт. Количество виртуальных хостов, которые можно добавить к VPS, не ограничено.

Настраивать

Шаги, описанные в этом руководстве, требуют наличия у пользователя привилегий root. Вы можете увидеть, как это настроить, в исходной настройке сервера. Вы можете реализовать любое имя пользователя, которое вам подходит.

Кроме того, на вашем виртуальном сервере должен быть уже установлен и запущен apache. Если это не так, вы можете загрузить его с помощью этой команды:

sudo apt-get install apache2

Шаг первый — создайте новый каталог

Первым шагом в создании виртуального хоста является создание каталога, в котором мы будем хранить информацию о новом веб-сайте.

Это расположение будет корневым каталогом вашего документа в виртуальном файле конфигурации Apache позже. Добавляя -p к строке кода, команда автоматически создает всех родителей для нового каталога.

sudo mkdir -p /var/www/example.com/public_html

Вам нужно будет указать действительный одобренный DNS домен или IP-адрес, чтобы проверить, работает ли виртуальный хост. В этом руководстве мы будем использовать example.com в качестве заполнителя для правильного доменного имени.

Однако, если вы хотите использовать неутвержденное доменное имя для тестирования процесса, вы найдете информацию о том, как заставить его работать на вашем локальном компьютере в Шаге 7.

Шаг второй — предоставление разрешений

Нам нужно предоставить право собственности на каталог пользователю, а не просто хранить его в корневой системе.

 sudo chown -R $USER:$USER /var/www/example.com/public_html 

Кроме того, важно убедиться, что каждый сможет прочитать наши новые файлы.

 sudo chmod -R 755 /var/www

Теперь вы все сделали с разрешениями.

Шаг третий — создайте страницу

В нашем каталоге конфигураций нам нужно создать новый файл с именем index.html.

sudo nano /var/www/example.com/public_html/index.html

Мы можем добавить некоторый текст в файл, чтобы нам было на что смотреть, когда IP-адрес перенаправляется на виртуальный хост.

<html>
  <head>
    <title>www.example.com</title>
  </head>
  <body>
    <h1>Success: You Have Set Up a Virtual Host</h1>
  </body>
</html>

Сохранить и выйти

Шаг четвертый — создайте новый файл виртуального хоста

Следующим шагом является настройка конфигурации apache. Мы собираемся работать с дубликатом — сделайте копию файла (назовите его в честь вашего доменного имени) в том же каталоге:

 sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/example.com

Шаг пятый — включите виртуальные хосты

Откройте новый файл конфигурации:

 sudo nano /etc/apache2/sites-available/example.com

В этом файле мы собираемся настроить виртуальный хост.

Первый шаг — вставить строку для ServerName в строку ServerAdmin.

  ServerName example.com 

ServerName указывает доменное имя, которое использует виртуальный хост.

Если вы хотите, чтобы ваш сайт был доступен более чем с одного имени (например, с www в URL-адресе), вы можете включить альтернативные имена в свой файл виртуального хоста, добавив строку ServerAlias. Начало файла вашего виртуального хоста будет выглядеть так:

<VirtualHost *:80>
        ServerAdmin webmaster@example.com
        ServerName example.com
        ServerAlias www.example.com
  [...]

Следующим шагом является заполнение правильного корня документа. Для этого раздела введите расширение нового каталога, созданного на первом этапе. Если корень документа неверный или отсутствует, вы не сможете настроить виртуальный хост.

Раздел должен выглядеть так:

 DocumentRoot /var/www/example.com/public_html 

Никаких других изменений в этот файл вносить не нужно. Сохранить и выйти.

Последний шаг — активировать хост с помощью встроенного ярлыка apache:

 sudo a2ensite example.com

Шаг шестой — перезапустите Apache

Мы внесли много изменений в конфигурацию, и виртуальный хост настроен. Однако ни одно из внесенных нами изменений не вступит в силу, пока Apache не будет перезапущен.

Используйте эту команду для перезапуска Apache:

 sudo service apache2 restart

You may see an error along the lines of

Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName 

Необязательный седьмой шаг — настройка локальных хостов

Если вы указали свое доменное имя на IP-адрес вашего виртуального частного сервера, вы можете пропустить этот шаг — вам не нужно настраивать локальные хосты. Ваши виртуальные хосты должны работать. Однако, если вы хотите опробовать новые виртуальные хосты без необходимости подключения к реальному доменному имени, вы можете настроить локальные хосты только на своем компьютере.

Чтобы продолжить этот шаг, вам необходимо знать пароль администратора вашего компьютера, в противном случае вам потребуется использовать фактическое доменное имя для тестирования виртуальных хостов.

Если вы работаете на Mac или Linux, получите доступ к пользователю root (su) на компьютере и откройте файл hosts:

nano /etc/hosts 

Если вы работаете на компьютере с Windows, вы можете найти инструкции по изменению хост-файла на сайте Microsoft.

Вы можете добавить в этот файл сведения о локальных хостах, как показано в примере ниже. Пока эта строка существует, направление вашего браузера, скажем, на example.com даст вам все данные виртуального хоста для соответствующего IP-адреса.

# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1       localhost

#Virtual Hosts 
12.34.56.789    example.com

Тем не менее, может быть хорошей идеей удалить эти выдуманные адреса из локальной папки hosts, когда вы закончите, чтобы избежать путаницы в будущем.

Шаг восьмой — РЕЗУЛЬТАТЫ: посмотрите на свой виртуальный хост в действии

После того, как вы закончите настройку своего виртуального хоста, вы сможете увидеть, как он выглядит в Интернете. Введите свой IP-адрес в браузере (например, http://12.34.56.789)

Он должен быть чем-то похож на мой handy

Хорошая работа!

Создание дополнительных виртуальных хостов

Чтобы добавить больше виртуальных хостов, вы можете просто повторить описанный выше процесс, тщательно настроив новый корень документа с соответствующим доменным именем, а затем создав и активировав новый файл виртуального хоста.

Узнать больше

После того, как вы настроили свои виртуальные хосты, вы можете перейти к установке FTP-сервера.