【问题标题】:How to configure apache (ubuntu) such that www.mysite.com will direct to www.mysite.com/drupal6/?如何配置 apache (ubuntu) 以使 www.mysite.com 指向 www.mysite.com/drupal6/?
【发布时间】:2010-03-01 11:00:32
【问题描述】:

我是 ubuntu 和 apache 的新手。谁能告诉我如何引导到

www.mysite.com/drupal6

当用户地址为 www.mysite.com 时?

非常感谢。

干杯。

【问题讨论】:

  • 仅供参考,这与编程无关,更适合 serverfault.com。有人可以请迁移吗?

标签: apache drupal ubuntu virtual-directory


【解决方案1】:

如果您运行的是 Apache 和 Ubuntu,实际上有一种非常简单的方法可以使用简单的 php 脚本强制重定向。

在你的服务器根目录下创建一个index.php文件,并将以下代码粘贴进去

<?php header("location: drupal6/") ?>

这将导致网站在访问时自动重定向到 drupal6 文件夹。

【讨论】:

    【解决方案2】:

    这应该可行。在服务器的根文件夹中创建一个名为 .htaccess 的文件 - 开头的点非常重要,因为这有助于服务器将文件识别为隐藏/系统配置文件。

    打开文件并将以下代码行粘贴到:

    Options +FollowSymlinks
    RewriteEngine on
    
    RewriteCond %{SERVER_PORT} 80
    RewriteRule ^(.*)$ www.mysite.com/drupal6/$1 [R,L]
    

    这应该会强制所有到服务器的流量重定向到您的自定义文件夹。

    .htaccess 代码的简要说明

    如果你想让重写工作,你必须启用重写引擎并告诉服务器遵循符号链接。

    第二部分建立规则 - 专门将其应用于标准 Web 端口 80 上的所有流量。

    最后一行告诉服务器抓取 URL 之后的所有内容并将其附加到新地址 (mysite.com/drupal6)。

    您可以使用 .htaccess 文件做更多事情,但您确实需要在 Google 上找到好的示例进行测试。

    【讨论】:

      【解决方案3】:

      查看 Apache 的 mod_rewrite 文档。您的 apache 配置中至少需要一个 RewriteRule,您可能还需要 RewriteCond 来定义何时使用 RewriteRule。

      您的重写模式将使用以下内容重写 REQUEST_URI:^/$ 到:/drupal6^$ 是防止 Apache 在重写基本 URI 时陷入无限循环的必要条件,仅匹配“/”而不是“/anything-else”。

      我假设您使用的是最新版本的 Ubuntu 和 Apache?如果是这样,请参阅Apache 2.2 documentation on mod_rewrite

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-12-23
        • 1970-01-01
        • 2020-06-10
        • 2012-09-10
        • 1970-01-01
        • 1970-01-01
        • 2016-04-15
        • 2011-03-01
        相关资源
        最近更新 更多