Назад к инструментам

Генератор Apache VirtualHost

Укажите домен, выберите статические файлы или reverse proxy и получите полный блок <VirtualHost> — с SSL, логами, правами доступа к директории и лимитами загрузки. Ничего не загружается и не запускается здесь — скопируйте результат в /etc/apache2/sites-available/ сами.

Основы

Домен и файл

ServerName — это то, с чем Apache сравнивает заголовок Host запроса; всё остальное следует из этого значения.

через пробел

Содержимое

Что отдаёт этот vhost

Файлы по этому пути отдаются напрямую. Права доступа и настройки <Directory> — ниже.

SSL

Виртуальный хост HTTPS

только для старых наборов сертификатов

Ещё нет сертификата? Сгенерируйте команды OpenSSL/Certbot с помощью Генератора команд для SSL-сертификата этот инструмент только ссылается на итоговые пути к файлам.

Логи и доступ

Логи и права доступа к директории

Directory Optionsтолько для режима статического сайта — у reverse proxy нет локальной директории для отдачи

Загрузки

Размер тела запроса

Аналог client_max_body_size из nginx, но в Apache. Нужен только если этот vhost принимает загрузку файлов.

Проверка

Типичные ошибки, проверка в реальном времени

Порты не конфликтуют

Блоки HTTP и HTTPS используют разные порты.

Имя файла конфига заканчивается на .conf

a2ensite его подхватит.

Каждый блок VirtualHost закрыт

Случайно пропущенный </VirtualHost> — это ошибка ручного редактирования, а не то, что может выдать этот генератор.

Вывод

Конфиг vhost apache2

Конфиг vhost apache2

<VirtualHost *:80>
    ServerName app.wespner.eu
    ServerAlias www.app.wespner.eu

    # Redirect every request to HTTPS, preserving path and query string
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [END,NE,R=permanent]

    ErrorLog "/var/log/apache2/app.wespner.eu-error.log"
    CustomLog "/var/log/apache2/app.wespner.eu-access.log" combined
</VirtualHost>

<VirtualHost *:443>
    ServerName app.wespner.eu
    ServerAlias www.app.wespner.eu

    SSLEngine on
    SSLCertificateFile "/etc/letsencrypt/live/app.wespner.eu/fullchain.pem"
    SSLCertificateKeyFile "/etc/letsencrypt/live/app.wespner.eu/privkey.pem"

    DocumentRoot "/var/www/app.wespner.eu/public"

    <Directory "/var/www/app.wespner.eu/public">
        Options -Indexes FollowSymLinks -MultiViews
        AllowOverride None
        Require all granted
    </Directory>

    ErrorLog "/var/log/apache2/app.wespner.eu-error.log"
    CustomLog "/var/log/apache2/app.wespner.eu-access.log" combined
</VirtualHost>

разверните его

# 1. Save the config above as:
sudo nano /etc/apache2/sites-available/app.wespner.eu.conf

# 2. Enable the modules this vhost needs
sudo a2enmod ssl rewrite

# 3. Enable the site
sudo a2ensite app.wespner.eu.conf

# 4. Test the config, then reload Apache
sudo apachectl configtest && sudo systemctl reload apache2

Управляете собственным игровым сервером?

Игровые серверы Wespner с защитой от DDoS, дисками NVMe и активацией за несколько минут.

Посмотреть хостинг