Первичная настройка виртуального сервера

После установки XAMPP имеет только один адрес http://localhost.

Для создания своих хостов необходимо изменить файл конфигураций /Applications/XAMPP/xamppfiles/etc/httpd.conf. Открываем его и переходим к строке 173, в этой строке измените параметр User daemon на User username, где username - имя пользователя в Вашей системе Mac OS X. Пример:


<IfModule unixd_module>
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.  
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User username
Group daemon
</IfModule>

Далее включим в работу VirtualHosts. Для этого необходимо раскомментировать строку 488:


# Virtual hosts
Include etc/extra/httpd-vhosts.conf

Теперь нам необходимо сохраним работу http://localhost без изменений. Для этого откройте файл /Applications/XAMPP/etc/extra/httpd-vhosts.conf и добавьте в конец этого файла следующий блок:


#localhost 
<VirtualHost *:80> 
    ServerName localhost 
    DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs" 
    <Directory "/Applications/XAMPP/xamppfiles/htdocs"> 
        Options Indexes FollowSymLinks Includes execCGI 
        AllowOverride All 
        Allow From All 
        Order Allow,Deny
    </Directory> 
</VirtualHost>

Сохраняем файл и закрываем его.

С первичной настройкой закончили.


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

Для примера создадим тестовый виртуальный хост для сайта http://test.local. Сначала создадим папку для файлов проекта, например: /Users/username/www/test.local и добавим в эту папку файл index.php с кодом:

<?php
phpinfo();

Далее открываем файл /Applications/XAMPP/etc/extra/httpd-vhosts.conf и добавляем в конец файла следующий блок:


#test
<VirtualHost *:80> 
    ServerName test.local 
    DocumentRoot "/Users/username/www/test.local" 
    <Directory "/Users/username/www/test.local"> 
        Options Indexes FollowSymLinks Includes ExecCGI 
        AllowOverride All 
        Require all granted 
    </Directory> 
    ErrorLog "logs/test.local-error_log" 
</VirtualHost> 

Теперь нам необходимо добавить в файл /etc/hosts новый сайт. Для этого открываем терминал и выполняем команду:

sudo nano /etc/hosts

Система запросит пароль администратора, после ввода пароля будет открыт файл /etc/hosts для редактирования, в конец файла добавляем следующую строку:

127.0.0.1        test.local

Перезапускаем Apache:

XAMPP рестарт Apache

Все готово, открываем браузер и вводим в адресную строку http://test.local, если все сделано верно, то в ответ Вы увидите примерно следующее:

Проверка тестового виртуального хоста