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

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

Настройте виртуальные хосты Apache на CentOS, RHEL и Fedora

  1. Apache поддерживает два типа виртуального хоста
  2. Преимущество:
  3. 1a) Создать структуру каталогов
  4. 2а) Изменить право собственности
  5. 3a) Настройка правильного разрешения для каталога www
  6. 4a) Создание образца страницы для сайтов
  7. 5a) Создание каталогов и файлов виртуальных хостов
  8. 6a) Добавить конфигурацию виртуального хоста
  9. 7a) Включение виртуальных хостов
  10. 8a) Запустите configtest.
  11. 9a) Перезагрузка Apache
  12. 10a) Перезапустите Apache
  13. 11a) Добавление имени домена в файл hosts.
  14. 12a) Очистить локальный кеш DNS
  15. 13a) Доступ к недавно настроенному веб-сайту
  16. 2) Виртуальные хосты на основе IP
  17. Как добавить виртуальный хост на основе IP в apache
  18. 2a) Доступ к недавно настроенному веб-сайту

Virtualhost Размещая несколько доменов на одном сервере, называемом virtualhost, вы можете разместить N виртуального хоста на одном веб-сервере Apache. Посмотрите на нижеприведенную биграмму: там ясно сказано, что мы можем запустить N виртуального хоста в одном веб-сервере Apache. Убедитесь, что ваша система должна быть установлена ЛАМПА в CentOS , ЛАМПА в Fedora , Также вы заинтересованы в Настройка виртуального хоста Apache в системах на основе Debian ,

Apache поддерживает два типа виртуального хоста

  • Виртуальные хосты на основе имен (все сайты используют один IP-адрес)
  • Виртуальные хосты на основе IP (каждый веб-сайт имеет свой IP-адрес)

1) Виртуальный хост на основе имени.

В виртуальном хосте на основе имени каждый веб-сайт использует один IP-адрес. Как его работа? Для виртуального хоста на основе имени вам нужно правильно настроить DNS, чтобы сопоставить домен с общим IP. Пример среды размещения: всякий раз, когда вы покупаете домен и хостинг, они будут просить вас указать домен на сервере провайдера хостинга (например, они предоставят два сервера имен для вашего домена для сопоставления их сервера)
В виртуальном хосте на основе имени каждый веб-сайт использует один IP-адрес

Преимущество:

  • Легко управлять
  • Простота настройки по сравнению с IP
  • Подходит для среды с общим и посредническим хостингом

1) Как добавить виртуальный хост на основе имени в Apache

В Apache 2.2 и более ранних версиях мы должны упоминать, когда мы используем Namehost Virtualhost , например, NameVirtualHost IP: 80, но Apache 2.4 не нужен, поскольку любая комбинация адреса / порта, появляющаяся в нескольких виртуальных хостах, неявно рассматривается как виртуальный хост на основе имени, Больше подробностей

1a) Создать структуру каталогов

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

# Создать виртуальный каталог # # mkdir -p /var/www/dev.2daygeek.com/public_html # mkdir -p /var/www/support.2daygeek.com/public_html

2а) Изменить право собственности

При создании виртуального каталога По умолчанию каталог назначается пользователю root . Если у него есть права пользователя root, никто не может ничего изменить. Таким образом, нам нужно изменить право собственности соответствующего пользователя на внесение изменений самостоятельно.

# Изменить владельца # # chown -R username: username /var/www/support.2daygeek.com/public_html # chown -R username: username /var/www/dev.2daygeek.com/public_html

3a) Настройка правильного разрешения для каталога www

Установите правильное разрешение для apache web root ( / var / www ), чтобы каждый мог прочитать сайт.

# chmod -R 755 / var / www /

4a) Создание образца страницы для сайтов

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

# Создать образец страницы для support.2daygeek.com # # nano /var/www/support.2daygeek.com/public_html/index.html <html> <head> <title> Добро пожаловать на support.2daygeek.com </ title> < / head> <body> <h1> Удачи! Виртуальный хост support.2daygeek.com работает нормально </ h1> </ body> </ html> # Создать образец страницы для dev.2daygeek.com # # nano /var/www/dev.2daygeek.com/public_html/index .html <html> <head> <title> Добро пожаловать на dev.2daygeek.com </ title> </ head> <body> <h1> Успех! Виртуальный хост dev.2daygeek.com работает нормально </ h1> </ body> </ html>

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

Нам нужно создать каталоги и файл виртуального хоста для каждого домена. По умолчанию система на основе deb имеет виртуальные каталоги и файл виртуального хоста по умолчанию 000-default.conf, но система на основе RPM не такая, поэтому мы должны создать ее вручную, как показано ниже. Убедитесь, что ваше расширение файла конфигурации vitualhost должно быть .conf

# Создание виртуальных каталогов # # mkdir / etc / httpd / sites-available # mkdir / etc / httpd / sites-enabled # Создание файла виртуального хоста # # touch /etc/httpd/sites-available/dev.2daygeek.com.conf # touch /etc/httpd/sites-available/support.2daygeek.com.conf # Включить файл виртуального хоста в файл httpd.conf # # nano /etc/httpd/conf/httpd.conf IncludeOptional sites-enabled / *. conf

6a) Добавить конфигурацию виртуального хоста

Откройте файл конфигурации виртуального хоста, который вы создали, и добавьте приведенный ниже контент (в соответствии с именем вашего домена). Убедитесь, что вам нужно изменить имя домена и имя каталога в соответствии с этим.

# Виртуальный хост для support.2daygeek.com # <VirtualHost *: 80> ServerName www.support.2daygeek.com ServerAlias ​​support.2daygeek.com DocumentRoot /var/www/support.2daygeek.com/public_html ErrorLog / var / www / support .2daygeek.com / error.log CustomLog /var/www/support.2daygeek.com/requests.log комбинированный </ VirtualHost> # Виртуальный хост для dev.2daygeek.com # <VirtualHost *: 80> Имя_сервера www.dev.2daygeek .com ServerAlias ​​dev.2daygeek.com DocumentRoot /var/www/dev.2daygeek.com/public_html ErrorLog /var/www/dev.2daygeek.com/error.log CustomLog /var/www/dev.2daygeek.com/requests. объединенный журнал </ VirtualHost>

7a) Включение виртуальных хостов

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

# Включить виртуальные хосты # ln -s /etc/httpd/sites-available/dev.2daygeek.com.conf /etc/httpd/sites-enabled/dev.2daygeek.com.conf ln -s / etc / httpd / sites- available / support.2daygeek.com.conf /etc/httpd/sites-enabled/support.2daygeek.com.conf # Отключить виртуальные хосты по умолчанию (просто удалите соответствующий файл символьной ссылки) # # rm -Rf / etc / httpd / sites -Enabled / dev.2daygeek.com.conf

8a) Запустите configtest.

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

# apachectl configtest

9a) Перезагрузка Apache

Перезагрузите конфигурацию apache, чтобы она заработала в новой конфигурации

# systemctl перезагрузить httpd.service

10a) Перезапустите Apache

Перезапустите Apache, наконец.

# systemctl restart httpd.service

11a) Добавление имени домена в файл hosts.

нам нужно добавить оба вышеуказанных домена в файл / etc / hosts, чтобы сопоставить домен с соответствующим IP без добавления зоны DNS . Так что мы можем проверить локально.

$ sudo nano / etc / hosts 127.0.0.1 localhost 10.0.2.15 support.2daygeek.com 10.0.2.15 dev.2daygeek.com

12a) Очистить локальный кеш DNS

Используйте команду ниже, чтобы очистить локальный кеш DNS

$ sudo /etc/init.d/dns-clean start

13a) Доступ к недавно настроенному веб-сайту

Перейдите в браузере и зайдите на сайт, перейдя по ссылкам http://support.2daygeek.com & http://dev.2daygeek.com
Перейдите в браузере и зайдите на сайт, перейдя по ссылкам   http://support
support.2daygeek.com - Вывод

2) Виртуальные хосты на основе IP

В виртуальном хосте на основе имени каждый веб-сайт имеет свой IP-адрес. Вы можете назначить более одного IP-адреса для одной карты NIC или вы можете назначить каждый выделенный IP-адрес отдельной карте NIC, и практически это не очень хорошо и трудно управлять. Для SSL-сертификата нам нужно использовать виртуальные хосты на основе IP.
В виртуальном хосте на основе имени каждый веб-сайт имеет свой IP-адрес

Как добавить виртуальный хост на основе IP в apache

Для виртуального хоста на основе IP нам нужно более одного IP. Итак, сначала нам нужно добавить дополнительный IP (с использованием псевдонимов IP). Мы уже знаем, что у нас есть один IP 10.0.2.15, который использовался для виртуального хоста Namebaed. Выполните следующие шаги, чтобы добавить дополнительный IP к той же карте NIC. Для установки SSL- сертификата все используют виртуальный хост на базе IP.

# Добавить дополнительный IP в систему # $ sudo ifconfig eth0: 1 10.0.2.16 маска сети 255.255.255.0 $ ifconfig eth0 Ссылочный код: Ethernet HWaddr 08: 00: 27: 1e: a2: 47 inet addr: 10.0.2.15 Bcast: 10.0.2.255 Маска: 255.255.255.0 inet6 адрес: fe80 :: a00: 27ff: fe1e: a247 / 64 Область действия: соединение UP BROADCAST RUNNING MULTICAST MTU: 1500 Метрика: 1 пакеты RX: 23723 ошибки: 0 отброшено: 0 переполнений: 0 кадр: 0 TX пакеты: 16342 ошибок: 0 отброшено: 0 переполнений: 0 несущая: 0 коллизий: 0 txqueuelen: 1000 байтов RX: 15295059 (15,2 МБ) байтов TX: 1930608 (1,9 МБ) eth0: 1 Encap: Ethernet HWaddr 08:00:27 : 1e: a2: 47 inet addr: 10.0.2.16 Bcast: 10.0.2.255 Маска: 255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU: 1500 Метрика: 1 lo Ссылочный код: Локальная петля inet addr: 127.0.0.1 Маска: 255.0.0.0 inet6 addr: :: 1/128 Область действия: хост UP LOOPBACK RUNNING MTU: 65536 Метрика: 1 пакеты RX: ошибки 2020: 0 отброшено: 0 переполнений: 0 кадр: 0 пакетов TX: 2020 ошибок: 0 отброшено: 0 переполнений: 0 несущая: 0 коллизий: 0 txqueuelen: 0 RX байт: 202350 (202,3 КБ) TX байт: 202350 (202,3 КБ)

Выполните те же шаги, которые мы описали в виртуальном хосте на основе имени . И немного измените приведенные ниже шаги.

  • (6a) Измените Virtualhost dev.2daygeek.com с *: 80 на 10.0.2.15
  • (11a) Измените support.2daygeek.com с *: 80 на 10.0.2.16

2a) Доступ к недавно настроенному веб-сайту

Перейдите в браузере и зайдите на сайт, перейдя по ссылкам http://10.0.2.15 & http://10.0.2.16
Перейдите в браузере и зайдите на сайт, перейдя по ссылкам   http://10
support.2daygeek.com (10.0.2.16) - Вывод

Мы готовим все статьи для понимания всеми уровнями и уровнями администраторов Linux. Если статья полезна для вас, пожалуйста, потратьте меньше минуты, чтобы поделиться своими ценными комментариями в нашем разделе комментариев.

Пожалуйста, оставайтесь с нами на связи ... Удачи.

Как его работа?