APACHE - 将域重定向到 VirtualHost 的子文件夹

APACHE - 将域重定向到 VirtualHost 的子文件夹

我需要重定向到一个子文件夹,当我访问 domain.com 时,重定向到 domain.com/foo。此时我有一个简单的 apache 配置Alias /foo /var/www/foo。我想需要创建一个 VirtualHost,我已经这样做了:

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

但是我有too many redirect错误。我尝试评论Alias /foo /var/www/foo并添加:

<VirtualHost *:80>
        ServerName domain.com/foo
        <Directory /var/www/foo/>
        Options  FollowSymLinks
        Require all granted
        </Directory>
</VirtualHost>

但我遇到了同样的错误,有什么想法吗?

谢谢

答案1

如果你确实不想将虚拟主机映射到上面的目录/foo(考虑 Jason 的评论),使用类似以下内容:

<LocationMatch "^/$">
    Redirect permanent "/" "/foo/"
</LocationMatch>

这样,您将限制重定向到域根目录并防止当前重定向循环 - 所有Redirect节都适用于位置以。。。开始第三个论点/foo包括,所以你也会被重定向到/foo/foo

答案2

@Jason 提到对我有用。

非常简单,位于 apache2/htdocs/

创建一个 index.html 文件,包含以下内容。

http://本地主机 将首先进入 index.html,然后重定向到 /glassgov1/ 子文件夹。

<html>

<head>

  <!-- redirect default (index.html) page to another page or subfolder -->
        <meta http-equiv="refresh" content="0; url=http://localhost:10/glassgov1" />
</head>

    <body>

        <h1>It works!</h1>

    </body>

</html>

从 HTML 页面重定向

相关内容