Назад до інструментів

Генератор Apache VirtualHost

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

Основне

Домен і файл

ServerName — це те, з чим Apache порівнює заголовок Host запиту; усе інше залежить від цього значення.

через пробіл

Вміст

Що обслуговує цей vhost

Файли за цим шляхом віддаються напряму. Права доступу й налаштування <Directory> — нижче.

SSL

HTTPS-віртуальний хост

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

Ще немає сертифіката? Згенеруйте команди OpenSSL/Certbot за допомогою генератора команд SSL-сертифіката цей інструмент лише посилається на отримані шляхи до файлів.

Логування та доступ

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

Directory Optionsлише для режиму статичного сайту — зворотний проксі не має локального каталогу для обслуговування

Завантаження

Розмір тіла запиту

Власний аналог nginx-параметра client_max_body_size в 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 та активацією за кілька хвилин.

Переглянути хостинг