23

我在运行 Ubuntu Server 12.04 的网络服务器上安装了 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> 

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

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

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

4

1 回答 1

38

您应该添加到您的配置中:

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

并根据您的需要调整“目录”之间的配置。

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

于 2013-09-27T16:17:31.787 回答