Настройка IIS Apache Обновление браузера

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

Данное руководство предназначено для использования в локальной среде тестирования на Windows. Инструкции подходят для Apache 2.4 и более поздних версий.

  1. Создайте вложенную папку внутри C:\vhosts для каждого виртуального хоста, который вы хотите добавить на сервер Apache.
  2. Откройте C:\WINDOWS\system32\drivers\etc\hosts в блокноте или в любом другом текстовом редакторе. Найдите следующую строку в нижней части документа:
    127.0.0.1   localhost
  3. На отдельной пустой строке введите 127.0.0.1, затем поставьте пробел и введите имя виртуального хоста, который необходимо зарегистрировать. Например, чтобы создать виртуальный хост с именем mysite, введите следующую команду:
    127.0.0.1   mysite
  4. Добавьте нужное количество дополнительных виртуальных хостов, каждый из которых должен быть введён на отдельной строке с указанием того же IP-адреса (127.0.0.1). Сохраните файл хостов, и закройте его.
  5. Откройте конфигурационный файл Apache, httpd.conf, в текстовом редакторе. Он находится в файлах Apache в папке conf. Если вы используете XAMPP, этот файл находится по адресу C:\xampp\apache\conf\httpd.conf. Прокрутите вниз до конца раздела Supplemental configuration и найдите следующий раздел (приблизительно около 500 строки):
    #Virtual hosts
    #Include conf/extra/httpd-vhosts.conf
  6. Сотрите # около начала второй строки, раздел теперь должен выглядеть так:
    #Virtual hosts
    Include conf/extra/httpd-vhosts.conf
  7. Сохраните файл httpd.conf и закройте его.
  8. Откройте extra\httpd-vhosts.conf в блокноте или в любом другом текстовом редакторе. Если вы используете XAMPP, то адрес будет таким C:\xampp\apache\conf\extra\httpd-vhosts.conf. Главный раздел выглядит так:

    В XAMPP все строки будут закомментированы. Вам нужно удалить # в начале строки, содержащей следующую директиву:
    NameVirtualHost *.80
  9. Переместите курсор в область пустого пространства, расположенного на 15 строке в предыдущем скриншоте, и вставьте туда следующие три строки кода:
    <Directory C:/vhosts>
      Require all granted
    </Directory>
    Это позволяет установить правильные разрешения для папки, содержащей сайты, которые нужно рассматривать в качестве виртуальных хостов.
  10. На скриншоте в строках с 27 по 42 расположен код, который показывает примеры определения виртуальных хостов (в XAMPP они закоментированы). Там показаны все команды, которые могут быть использованы, но из них только DocumentRoot и ServerName являются обязательными.

    Когда вы используете виртуальный хостинг, Apache отключает главный корень сервера, поэтому первое определение должно содержать оригинальный корневой каталог. Затем вы добавляете каждый новый виртуальный хост внутри пары тегов <VirtualHost>, используя расположение веб-файлов сайта в качестве значения для DocumentRoot, и имя виртуального хоста для ServerName. Если путь содержит пробелы, то необходимо весь путь заключить в кавычки. Если ваш корневой каталог расположен, как у меня, в C:\htdocs, и вы добавляете mysite в качестве виртуального хоста в C:\vhosts, измените код на строках с 27 по 42 следуя следующему примеру (в XAMPP, просто добавить эти новые директивы в нижней части файла, и установить DocumentRoot для localhost в C:/xampp/htdocs):
    <VirtualHost *:80>
      DocumentRoot c:/htdocs
      ServerName localhost
    </VirtualHost>
    <VirtualHost *:80>
      DocumentRoot c:/vhosts/phpdw
      ServerName mysite
    </VirtualHost>
    
  11. Сохраните httpd-vhosts.conf и перезапустите Apache. Все сайты в корневом каталоге сервера будет по-прежнему доступны через httр://localhost/sitename/. Все, что в виртуальном хосте будет доступен через прямой адрес, например, httр://mysite/.
  12. Если у вас есть трудности с доступом к виртуальным хостам, убедитесь, что вы добавили index.php в директиву DirectoryIndex в файле httpd.conf.
Копирование материалов с данного сайта возможно только с разрешения администрации сайта
и при указании прямой активной ссылки на источник.
2011-2016 © puzzleweb.ru

Реклама на сайте | puzinfo@puzzleweb.ru