重定向到Apache虚拟主机文件中的子文件夹

ojs*_*ojs 18 apache joomla redirect virtualhost

我在运行Ubuntu Server 12.04的Web服务器上安装了Joomla.Joomla文件夹位于/ var/www/cms /.

我在/ etc/apache2/sites-enabled/default的vhost文件具有以下内容:

<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> 
Run Code Online (Sandbox Code Playgroud)

目前,所有对domain.com的请求以及之后输入的任何内容(如domain.com/example)都会被Joomla定向和处理,重定向到正确的页面或返回自定义404错误.这一切都有效.

现在,我想在Joomla处理之前过滤所有转到domain.com/subfolder的请求,并将它们重定向到/ var/www/subfolder(而不是我在/ var/www/cms /的根文件夹).

我相信/ etc/apache2/sites-enabled/default(见上文)中的文件是定义这种重定向的正确位置,但是我无法弄清楚在什么位置以及如何实现这一点.

Vin*_*cci 27

您应该添加到您的配置:

Alias /subfolder /var/www/subfolder
<Directory /var/www/subfolder>
    Order allow,deny
    allow from all
</Directory>
Run Code Online (Sandbox Code Playgroud)

并根据您的需要调整"目录"之间的配置.

请参阅Apache文档以获取更多信息.