Все статьи
Linux 15 июня 2021 1 мин чтения

Xampp. Настройка нескольких виртуалхостов на Debian

Виртуальные хосты позволяют запускать несколько веб-сайтов на одном сервере, используя разные доменные имена. В этой статье рассмотрим настройку виртуальных хостов в XAMPP на Debian. Шаг 1: Установка XAMPP Если XAMPP ещё не установлен: Шаг 2: Создание директорий для сайтов Создайте тестовые файлы: Шаг 3: Настройка виртуальных хостов Откройте конфигурационный файл Apache: Добавьте конфигурацию: Шаг 4: […]

Виртуальные хосты позволяют запускать несколько веб-сайтов на одном сервере, используя разные доменные имена. В этой статье рассмотрим настройку виртуальных хостов в XAMPP на Debian.

Шаг 1: Установка XAMPP

Если XAMPP ещё не установлен:

wget https://sourceforge.net/projects/xampp/files/XAMPP%20Linux/8.2.12/xampp-linux-x64-8.2.12-0-installer.run
chmod +x xampp-linux-x64-8.2.12-0-installer.run
sudo ./xampp-linux-x64-8.2.12-0-installer.run

Шаг 2: Создание директорий для сайтов

sudo mkdir -p /opt/lampp/htdocs/site1
sudo mkdir -p /opt/lampp/htdocs/site2

Создайте тестовые файлы:

echo '<h1>Site 1</h1>' | sudo tee /opt/lampp/htdocs/site1/index.html
echo '<h1>Site 2</h1>' | sudo tee /opt/lampp/htdocs/site2/index.html

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

Откройте конфигурационный файл Apache:

sudo nano /opt/lampp/etc/extra/httpd-vhosts.conf

Добавьте конфигурацию:

<VirtualHost *:80>
    DocumentRoot "/opt/lampp/htdocs/site1"
    ServerName site1.local
    <Directory "/opt/lampp/htdocs/site1">
        Require all granted
    </Directory>
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/opt/lampp/htdocs/site2"
    ServerName site2.local
    <Directory "/opt/lampp/htdocs/site2">
        Require all granted
    </Directory>
</VirtualHost>

Шаг 4: Включение виртуальных хостов

Откройте основной конфиг Apache:

sudo nano /opt/lampp/etc/httpd.conf

Найдите и раскомментируйте строку:

Include etc/extra/httpd-vhosts.conf

Шаг 5: Настройка hosts файла

Добавьте домены в файл hosts:

sudo nano /etc/hosts

Добавьте строки:

127.0.0.1   site1.local
127.0.0.1   site2.local

Шаг 6: Перезапуск XAMPP

sudo /opt/lampp/lampp restart

Проверка

Откройте браузер и перейдите по адресам:

  • http://site1.local
  • http://site2.local

Дополнительно: HTTPS виртуальные хосты

Для SSL добавьте в httpd-vhosts.conf:

<VirtualHost *:443>
    DocumentRoot "/opt/lampp/htdocs/site1"
    ServerName site1.local
    SSLEngine on
    SSLCertificateFile "/opt/lampp/etc/ssl/server.crt"
    SSLCertificateKeyFile "/opt/lampp/etc/ssl/server.key"
</VirtualHost>

Полезные команды

sudo /opt/lampp/lampp start      # Запуск
sudo /opt/lampp/lampp stop       # Остановка
sudo /opt/lampp/lampp restart    # Перезапуск
sudo /opt/lampp/lampp status     # Статус