Перенаправление в подпапку в файле виртуального хоста Apache

У меня есть Joomla, установленный на веб-сервере под управлением Ubuntu Server 12.04. Папка Joomla находится по адресу /var/www/cms/.

мой файл vhost в /etc/apache2/sites-enabled / default имеет следующее содержимое:

<VirtualHost *:80>
    ServerName domain.com/
    Redirect permanent / https://domain.com/
</VirtualHost>

<VirtualHost *:443>
    ServerAdmin webmaster@localhost
    ServerName domain.com:443

    DocumentRoot /var/www/cms
    <Directory />
        Options FollowSymLinks
        AllowOverride All
    </Directory>
    <Directory /var/www/cms>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    (...)
</VirtualHost> 

на данный момент все запросы domain.com и все, что вошло после этого, как domain.com/example получает направление и обрабатывается Joomla, который либо перенаправляет на нужную страницу или возвращает пользовательскую ошибку 404. Все работает.

теперь я хотел бы отфильтровать все запросы, которые идут в domain.com/subfolder прежде чем они будут обработаны Joomla и перенаправлены в /var/www/subfolder (вместо моей корневой папки в /var/www/cms/).

Я считаю, что файл в /etc/apache2/sites-enabled / default (см. выше) является правильным местом для определения такого перенаправления, однако я не смог выяснить, в какой позиции и как этого достичь.

1 ответов


вы должны добавить в свою конфигурацию:

Alias /subfolder /var/www/subfolder
<Directory /var/www/subfolder>
    Order allow,deny
    allow from all
</Directory>

и приспосабливать конфигурацию между "каталогом" к вашим потребностям.

посмотреть документация Apache чтобы иметь больше информации.