重定向/子目录到/ symlink /子目录,其中/ symlink指向/

时间:2016-01-27 14:01:38

标签: .htaccess drupal-7 symlink

我正在开发基于子目录的drupal7多站点设置,其中example.com用于主网站,example.com / subsite是另一个独立的drupal安装。 subsite是位于根目录中的符号链接,也指向根目录,以使子网站能够访问drupal核心文件。

现在我必须通过example.com/subsite/static提供静态内容,所以我在根目录中创建了一个静态目录。一切正常。

问题是,example.com/static现在也可以访问,我想阻止它。

我尝试将所有请求重定向到/ static到/ subsite / static,导致行为不一致并重定向循环。

目录结构:

/
/{various drupal directories}
/subsite -> /
/static

重写规则:

RewriteRule ^/static/(.*)$ /subsite/static/$1 [R,L]
事先提前

2 个答案:

答案 0 :(得分:1)

这是你想要的吗?

RewriteBase /    
RewriteRule ^static/(.*)$ /subsite/static/$1 [L,R=301]
RewriteRule ^subsite/static/(.*)$ /static/$1 [L]
  • 在第一行,我们将所有来电调用/static/重定向到/subsite/static/
  • 在第二行,我们将所有对/subsite/static/的调用重写为/static

如果不起作用,请发布您的整个.htaccess文件。

答案 1 :(得分:1)

我通过使用重写条件修复了重定向循环,之前应该想到这一点。

RewriteCond %{REQUEST_URI} !^/subsite/(.*)$
RewriteRule ^static/(.*)$ /subsite/static/$1 [L,R=301]
无论如何,@ florian-lemaitre试图帮助我