【问题标题】:Using .htaccess to mirror main domain in subdomain使用 .htaccess 在子域中镜像主域
【发布时间】:2017-05-10 09:27:06
【问题描述】:

我想将同一域中的所有文件镜像到我的子域中,但排除一些文件(例如 robots.txt)以避免 SE 索引。 因此,子域的显示和行为应与主域完全相同,包括所有文件和查询字符串。

服务器文件夹配置:

/htdocs/域
/htdocs/子域

域配置:

域名.com
subdomain.domain.com

如何使用子域文件夹中的 .htaccess 文件来实现这一点?

【问题讨论】:

  • 您想使用 URL 重写将来自子域的流量重定向到您的域吗?
  • 我不想在用户被转发到主域的意义上进行重定向。对于用户来说,他似乎仍然在子域上。但是看到相同的内容...
  • 如果唯一的原因是通过子域无法访问的文件很少,则不需要维护单独的文件夹。
  • @JanPaepke 为什么不编写规则,如果请求来自特定子域,则使这些文件无法访问?这样您就不需要 2 个单独的文件夹,只需将两个域指向同一个文件夹即可。
  • @DusanBajic 以后可能还会有其他差异。

标签: apache .htaccess


【解决方案1】:

所以我结合使用 .htaccess 和 PHP 解决了这个问题。

我使用 .htaccess 和 modrewrite 将完整的请求推送到我放置在子目录文件夹中的 php 文件中。

如果不存在本地版本,我会在该 PHP 文件中包含主域文件。

$mainpath = "../domain/";
$localFile = $_REQUEST["__PATHREQUEST"];
$replacementFile = $mainpath . $_REQUEST["__PATHREQUEST"];

unset($_REQUEST["__PATHREQUEST"]);

if (file_exists($localFile)) {
    include($localFile);
} else {
    include($replacementFile);
}

也许这对某人有帮助...

【讨论】:

    猜你喜欢
    • 2014-07-25
    • 1970-01-01
    • 2016-12-19
    • 1970-01-01
    • 1970-01-01
    • 2016-07-06
    • 2016-02-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多