Сервис для
сео - оптимизаторов

Найди ошибки на сайте
Ошибки мешают продвижению сайта
Исправь ошибки на сайте
Сайт без ошибок продвигать легче
Получи новых клиентов
Новые клиенты принесут больше прибыль

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

  1. О виртуальных хостах Виртуальные хосты используются для настройки более одного домена или веб-сайтов...
  2. Установите веб-сервер Apache
  3. Настройка виртуальных хостов Apache
  4. 2. Настройка собственности и разрешений
  5. 4. Создайте образцы страниц для виртуальных хостов.
  6. 5. Создайте файлы виртуальных хостов
  7. Тестирование виртуальных хостов

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

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

В этом руководстве я покажу, как настроить виртуальные хосты на веб-сервере Apache на сервере Ubuntu 15.10. Кроме того, этот метод должен работать с предыдущими дистрибутивами Ubuntu, такими как Ubuntu 15.04, 14.10 и 14.04 и т. Д.

сценарий

В этом руководстве я буду использовать 64-битную версию сервера Ubuntu 15.10, и я собираюсь разместить два тестовых сайта, а именно «unixmen1.local» и «unixmen2.local» на одном и том же сервере.

Мой тестовый IP-адрес и имя хоста - 192.168.1.103/24 и server.unixmen.local соответственно. Обязательно измените виртуальные доменные имена в соответствии с вашими требованиями.

Установите веб-сервер Apache

Прежде чем устанавливать сервер Apache, давайте обновим наш сервер Ubuntu:

Для этого запустите:

sudo apt-get update

Теперь установите веб-сервер apache с помощью следующей команды:

sudo apt-get установить apache2

После установки сервера Apache давайте проверим, работает ли веб-сервер должным образом, перейдя по URL-адресу http: // ip-address / .

После установки сервера Apache давайте проверим, работает ли веб-сервер должным образом, перейдя по URL-адресу http: // ip-address /

Как вы видите на картинке выше, веб-сервер apache работает.

Теперь перейдем к настройке виртуальных хостов на веб-сервере Apache.

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

1. Создайте виртуальные каталоги

Теперь перейдем к настройке виртуальных хостов. Как я упоминал ранее, я собираюсь разместить два виртуальных хоста с именами «unixmen1.local» и «unixmen2.local» .

Создайте публичный каталог для размещения данных двух виртуальных хостов.

Во-первых, давайте создадим каталог для сайта unixmen1.local:

sudo mkdir -p /var/www/html/unixmen1.local/public_html

Затем создайте каталог для сайта unixmen2.local:

sudo mkdir -p /var/www/html/unixmen2.local/public_html

2. Настройка собственности и разрешений

Указанные выше каталоги теперь принадлежат пользователю root. Мы должны изменить владельца этих двух каталогов на обычного пользователя.

sudo chown -R $ USER: $ USER /var/www/html/unixmen1.local/public_html/ sudo chown -R $ USER: $ USER /var/www/html/unixmen2.local/public_html/

Переменная «$ USER» указывает на текущего пользователя, вошедшего в систему.

Установите права на чтение для веб-каталога Apache (/ var / www / html /), чтобы каждый мог читать файлы из этого каталога.

sudo chmod -R 755 / var / www / html /

Мы создали каталоги для хранения данных веб-сайтов и присвоили им необходимые разрешения и права собственности.

4. Создайте образцы страниц для виртуальных хостов.

Теперь нам нужно создать образцы страниц, которые будут обслуживаться через веб-сайты.

Сначала давайте создадим пример страницы для виртуального хоста unixmen1.local .

Создайте index.html для виртуального хоста unixmen1.local,

sudo vi /var/www/html/unixmen1.local/public_html/index.html

Добавьте следующее содержание:

<html> <head> <title> www.unixmen1.local </ title> </ head> <body> <h1> Добро пожаловать на сайт Unixmen1.local </ h1> </ body> </ html>

Сохраните и закройте файл.

Аналогичным образом добавьте образец страницы на второй виртуальный хост.

sudo vi /var/www/html/unixmen2.local/public_html/index.html

Добавьте следующее содержание:

<html> <head> <title> www.unixmen2.local </ title> </ head> <body> <h1> Добро пожаловать на сайт Unixmen2.local </ h1> </ body> </ html>

Сохраните и закройте файл.

5. Создайте файлы виртуальных хостов

По умолчанию Apache поставляется с файлом виртуального хоста по умолчанию, который называется 000-default.conf . Мы скопируем содержимое файла 000-default.conf в наши новые файлы виртуального хоста.

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/unixmen1.local.conf sudo cp /etc/apache2/sites-available/000-default.conf / etc / apache2 /sites-available/unixmen2.local.conf

Убедитесь, что файлы виртуального хоста имеют расширение .conf в конце.

Теперь измените файл unximen1.local.conf, чтобы он отражал наши новые собственные значения.

sudo vi /etc/apache2/sites-available/unixmen1.local.conf

Внесите соответствующие изменения, которые отражают сайт unixmen1.

<VirtualHost *: 80> # Директива ServerName устанавливает схему запроса, имя хоста и порт, который # сервер использует для идентификации себя. Это используется при создании # перенаправления URL. В контексте виртуальных хостов ServerName # указывает, какое имя хоста должно отображаться в заголовке Host: запроса, чтобы # соответствовать этому виртуальному хосту. Для виртуального хоста по умолчанию (этот файл) это значение # не является решающим, поскольку оно используется в качестве хоста последней инстанции независимо. # Однако вы должны явно установить его для любого другого виртуального хоста. #ServerName www.example.com ServerAdmin [электронная почта защищена] ServerName unixmen1.local ServerAlias ​​www.unixmen1.local DocumentRoot /var/www/html/unixmen1.local/public_html # Доступные уровни журналов: trace8, ..., trace1, debug, информация, уведомление, предупреждение, # ошибка, критик, предупреждение, АВАРИЙНАЯ. # Также можно настроить уровень журнала для определенных # модулей, например #LogLevel info ssl: warn ErrorLog $ {APACHE_LOG_DIR} /error.log CustomLog $ {APACHE_LOG_DIR} /access.log вместе взятых # Для большинства файлов конфигурации из conf-available / # которые включены или отключены на глобальном уровне, можно включить строку только для одного конкретного виртуального хоста. Например, следующая строка # включает конфигурацию CGI для этого хоста только после того, как он был глобально отключен с помощью «a2disconf». #Include conf-available / serve-cgi-bin.conf </ VirtualHost>

Аналогичным образом измените второй файл виртуального хоста.

sudo vi /etc/apache2/sites-available/unixmen2.local.conf

Внесите соответствующие изменения, которые отражают сайт unixmen2.

<VirtualHost *: 80> # Директива ServerName устанавливает схему запроса, имя хоста и порт, который # сервер использует для идентификации себя. Это используется при создании # перенаправления URL. В контексте виртуальных хостов ServerName # указывает, какое имя хоста должно отображаться в заголовке Host: запроса, чтобы # соответствовать этому виртуальному хосту. Для виртуального хоста по умолчанию (этот файл) это значение # не является решающим, поскольку оно используется в качестве хоста последней инстанции независимо. # Однако вы должны явно установить его для любого другого виртуального хоста. #ServerName www.example.com ServerAdmin [электронная почта защищена] ServerName unixmen2.local ServerAlias ​​www.unixmen2.local DocumentRoot /var/www/html/unixmen2.local/public_html # Доступные уровни журналов: trace8, ..., trace1, отладка, информация, уведомление, предупреждение, # ошибка, критик, предупреждение, АВАРИЙНАЯ. # Также можно настроить уровень журнала для определенных # модулей, например #LogLevel info ssl: warn ErrorLog $ {APACHE_LOG_DIR} /error.log CustomLog $ {APACHE_LOG_DIR} /access.log вместе взятых # Для большинства файлов конфигурации из conf-available / # которые включены или отключены на глобальном уровне, можно включить строку только для одного конкретного виртуального хоста. Например, следующая строка # включает конфигурацию CGI для этого хоста только после того, как он был глобально отключен с помощью «a2disconf». #Include conf-available / serve-cgi-bin.conf </ VirtualHost>

После изменения файлов виртуальных хостов отключите виртуальный хост по умолчанию (000.default.conf) и включите новые виртуальные хосты, как показано ниже.

sudo a2dissite 000-default.conf sudo a2ensite unixmen1.local.conf sudo a2ensite unixmen2.local.conf

Наконец, перезапустите службу Apache.

В Ubuntu 15.10 / 15.04:

sudo systemctl перезапустить apache2

В Ubuntu 14.10 и более ранних версиях:

перезапуск службы sudo apache2

Вот и все. Теперь мы успешно настроили виртуальные хосты apache на нашем сервере Ubuntu.

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

Отредактируйте файл / etc / hosts ,

sudo vi / etc / hosts

Добавьте виртуальные доменные имена одно за другим, как показано ниже.

[...] 192.168.1.103 unixmen1.local 192.168.1.103 unixmen2.local

Сохраните и закройте файл.

Примечание. В случае, если вы хотите получить доступ к вышеуказанным сайтам из удаленной системы, вам необходимо добавить две вышеупомянутые строки в файл / etc / hosts / вашей удаленной системы. Не забудьте заменить IP-адрес своим собственным.

Откройте браузер и укажите URL-адрес http: //unixmen1.local или http: //unixmen2.local . Вы должны увидеть образцы страниц, которые мы создали ранее.

Unixmen1.local Тестовая страница:

local Тестовая страница:

Unixmen2.local Тестовая страница:

local Тестовая страница:

Кроме того, вы можете создавать и размещать столько сайтов, сколько захотите. Настроить виртуальные хосты в Ubuntu очень просто. Надеюсь, этот урок поможет вам.

Ура!