LAMP сервер позволяет иметь необходимое количество конфигураций виртуальных web серверов.

Причем, если некоторый сервер временно нужно отключить, то не нужно удалять .conf файлы.

Для этого используется 2 команды a2ensite и a2dissite которые соответственно включают сайт и отключают его

Фактически происходит следующее:

При старте apache сканирует каталог sites-enabled и все, что там находится подключает как виртуальные хосты.

Команда a2ensite создает символическую ссылку в каталоге sites-enabled на файл в каталоге sites-available, тогда как команда a2dissite удаляет символическую ссылку

Как это работает

  • Копируем файл 000-default.conf
    cp ./000-default.conf ./myhost.loc.conf

  • Редактируем файл myhost.loc.conf

    <VirtualHost *:80>
    
    
    ServerAdmin admin@myhost.loc
    
    
    DocumentRoot /path/to/site/root/public
    
    
    ServerName myhost.loc
    
    
    <Directory /path/to/site/root/public>
    
    
    AllowOverride All
    
    
    Require all granted
    
    
    Order allow,deny
    
    
    Allow from all
    
    
    </Directory>
    
    
    ErrorLog ${APACHE_LOG_DIR}/error_myhost.loc.log
    
    
    CustomLog ${APACHE_LOG_DIR}/access_myhost.loc.log combined
    
    
    </VirtualHost>
    

    Colored with dumpz.org

  • Активируем сайт
    sudo a2ensite myhost.loc.conf

  • При необходимости отключаем сайт
    sudo a2dissite myhost.loc.conf

  • Обновляем конфигурацию
    sudo service apache2 reload