我正在尝试将来自example.com的所有请求重定向到子目录。下面的代码实现了这一点,但我无法使子目录不可见。 (该子目录包含一个带有自己的/ htaccess文件的Drupal实例。这可能是问题吗?)
RewriteCond %{HTTP_HOST} ^example.com$ [NC]
RewriteRule ^(.*)$ http://example.com/drupal/d6/$1 [L]
最终在浏览器中显示如下:
http://example.com/drupal/d6/install.php?profile=default
编辑:我尝试按照建议从RewriteRule中删除http://example.com,但重定向仍然不可见。 : - (
答案 0 :(得分:0)
您需要重写到该位置,而不是完整的http:// URL。如果您对URL执行此操作,则即使[R]
e上没有RewriteRul
标记,也会发出重定向。转而去/drupal/d6/$1
它应该保持重写(而不是“升级”到重定向)。
来自http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html
Prefix Substitution with http://thishost[:thisport]/ (which makes the new URL a URI) to force a external redirection.
答案 1 :(得分:0)
绝对URl会导致重定向。只使用一条路径:
RewriteCond %{HTTP_HOST} ^example.com$ [NC]
RewriteCond $0 !^drupal/d6/
RewriteRule .* drupal/d6/$0 [L]