XAMPP установка сервера и настройка виртуальных хостов

Локальный сервер XAMPP весьма удобное решение для тех, кому приходится заниматься вебразработкой на разных операционных системах.
Существуют сборки  XAMPP как для Windows, так и для Linux, что, несомненно, добавляет удобство использования.
Если сборка под Windows ведет себя вполне предсказуемо, как и все win-приложения: поставил и пользуйся, то в случае с Linux необходимо произвести некоторые настройки для того, чтобы получить рабочий вариант приложения. Эти настройки здесь и приведем. Начнем с установки.

Скачать дистрибутив можно на официальном сайте XAMPP

Установка XAMPP на Linux

После загрузки дистрибутива необходимо установить права пользователя

chmod 755 xampp-linux-*-installer.run

Затем запустить установщик

sudo ./xampp-linux-*-installer.run

и далее проследовать все этапы установки, нажимая "Далее". Здесь ничего необычного.

После установки можно проверить работу приложения. Для этого запустить XAMPP и набрать в браузере localhost, в итоге должна открыться страница приветствия.
Включить XAMPP:

sudo /opt/lampp/lampp start

Остановить XAMPP:

sudo /opt/lampp/lampp stop

Запуск графичеcкого стартера:

sudo /opt/lampp/manager-linux-x64.run

Графический стартер может быть удобен, если вам приходится часто перезапускать сервер

 

Расположение основных файлов конфигурации XAMPP

Файл конфигурации Apache:

/opt/lampp/etc/httpd.conf, /opt/lampp/etc/extra/httpd-xampp.conf

Файл конфигурации PHP:

/opt/lampp/etc/php.ini

Файл конфигурации MySQL:

/opt/lampp/etc/my.cnf

Файл конфигурации ProFTPD:

/opt/lampp/etc/proftpd.conf

 

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

В процессе настройки вносятся исправления в три файла
Файл httpd.conf, находится здесь: opt/lampp/etc/httpd.conf
Файл httpd-vhosts.conf, находится здесь: opt/lampp/etc/extra/httpd-vhosts.conf
Файл hosts, находится здесь: etc/hosts

1. Конфигурируем апач httpd.conf

Файл opt/lampp/etc/httpd.conf
Раскомментировать строку поддержки виртуальных хостов
Было:

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

Стало:

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

Все, поддержка виртуальных хостов включена

Там же добавляем имя нашего пользователя и подключаем его в группу.
В секции заменяем daemon на Username (указать имя своего пользователя)
Было:

<IfModule unixd_module>
User daemon
Group daemon
</IfModule>

Стало

<IfModule unixd_module>
User username
Group username
</IfModule>


2. Создаем виртуальные хосты в папке /home/username/www/

Например:
/home/username/www/site1.loc
/home/username/www/site2.loc
и т.д.

3. Настраиваем виртуальные хосты httpd-vhosts.conf

Файл httpd-vhosts.conf opt/lampp/etc/extra/httpd-vhosts.conf
В этом файле находятся два примера секций для виртуальных хостов. Один можно удалить или закомментировать, второй ипользовать для настройки
Добавление виртуальных хостов.
Первая секция делается для локалхоста localhost с адресом /opt/lampp/htdocs

#localhost
<VirtualHost *:80>
ServerAdmin Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.
DocumentRoot "/opt/lampp/htdocs"
ServerName localhost
<Directory "/opt/lampp/htdocs">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
ErrorLog "logs/localhost-error_log"
CustomLog "logs/localhost-access_log" common
</VirtualHost>

#d-test.loc
<VirtualHost *:80>
ServerAdmin Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.
DocumentRoot "/home/username/www/site1.loc"
ServerName site1.loc
<Directory "/home/username/www/site1.loc">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
ErrorLog "logs/site1-error_log"
CustomLog "logs/site1-access_log" common
</VirtualHost>

 

3. Редактируем файл hosts

Расположение etc/hosts
Дописываем в файл виртуальные хосты

# Host addresses
127.0.0.1 localhost site1.loc site2.loc

И это вся настройка