【问题标题】:htaccess configuration directories for subdomains and root domain子域和根域的 htaccess 配置目录
【发布时间】:2017-01-23 19:11:30
【问题描述】:

我的www目录中的文件夹设置如下:

  • www/forums
  • www/helpdesk
  • www/www

在基本的www 文件夹(不是www/www)中,我在我的htaccess 文件中设置了以下基于子目录的重定向

  # Direct subdomains to appropriate folder in WWW directory
  RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
  RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

我还有以下设置用于在主站点 (www.example.com) 上配置 index.php - 这也在 www 目录中的 htaccess 文件中:

  # Rewrite rules
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} !=/favicon.ico
  RewriteRule ^(.*)$ www/$1 [L,QSA]

我面临的问题是我有来自forums.example.com 的东西,我想嵌入www.example.com(Vanilla 论坛 + WordPress 插件) - 如果我使用管理面板进行配置,iFrame 会被阻止,因为它们是不同的域。

我发现当我转到www.example.com/forums 时,我得到的首页与forums.examples.com 相同 - 但所有干净的 URL 都中断了。

当我查看www/forums文件夹中的.htaccess文件时,我看到了以下配置

   RewriteBase /
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteRule ^(.*)$ index.php\?p=$1 [QSA,L]

我需要对www目录中的.htaccess文件做些什么,这样当我转到www.example.com/forums时,它的工作原理就像我转到forums.example.com一样

【问题讨论】:

    标签: .htaccess mod-rewrite url-rewriting


    【解决方案1】:

    ...在我的 htaccess 文件中设置以下基于子目录的重定向
    # Direct subdomains to appropriate folder in WWW directory

    旁白:sn-p 只是一个规范的非 www 到 www 重定向。它不会“基于子目录重定向”,也不会“直接 [任何] 子域”。 (?)

    iFrame 被阻止,因为它们是不同的域。

    听起来好像您需要在forums.example.com 上设置一个Access-Control-Allow-Origin HTTP 响应标头以允许将内容“嵌入”到example.com 中? www/forums/.htaccess 文件中类似于以下内容(使用 mod_headers):

    Header set Access-Control-Allow-Origin "http://example.com"
    

    我需要对www 目录中的.htaccess 文件做些什么,这样当我转到www.example.com/forums 时,它的工作方式与我转到forums.example.com 时一样。

    “所有干净的 URL 都会中断”怎么办?但是,鉴于上面提到的 HTTP 标头,您不必再做任何事情,仍然可以访问 forums.example.com(而不是子目录)。

    顺便说一句,您可以访问子目录(子域指向)的事实正是您的主机配置方式。通常,您应该阻止对子目录的访问,以防止出现重复内容问题(以及任何其他问题,例如您提到的链接问题)。

    另外请注意,由于 mod_rewrite 指令的继承方式(或者在这种情况下,不是)。 www/forums/.htaccess 文件中的 mod_rewrite 指令完全覆盖了父文件夹中的 mod_rewrite 指令。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-11
      • 2011-08-24
      • 1970-01-01
      • 1970-01-01
      • 2015-11-16
      • 1970-01-01
      • 1970-01-01
      • 2018-02-17
      相关资源
      最近更新 更多