从文档根的子目录重定向到同级目录文档根的不同子目录

问题描述

我想在内部将请求从 /media/myspecialdir/image.jpg 重定向/myspecialdir/image.jpg

如果它只是文档根目录中的 .htaccess 文件,这将是直接的。问题是 /media 目录已经存在并且包含一个 .htaccess 文件。这意味着对 /media/myspecialdir/image.jpg 的请求会被该 .htaccess 文件拦截

是否可以从文档根目录的子目录重定向到文档根目录的另一个子目录。

我尝试过以下内容

RewriteRule (.*) ../myspecialdir/$1 [L]

但这仍然在重写的 URL 前添加一个 media 目录。

解决方法

根据您展示的样品,您可以尝试以下操作吗?考虑到您的 htaccess 文件存在于 media 文件夹中。请先清除浏览器缓存,然后再测试您的网址。

RewriteEngine ON
RewriteBase /media/

##Then your rules from here.........
,

是否可以从文档根目录的子目录重定向到文档根目录的另一个子目录。

是的,这绝对是可能的。在 /media/.htaccess 中包含此规则:

RewriteEngine On

RewriteRule .+ /myspecialdir/$1 [L]

这假设 myspecialdir 存在于站点根目录下。由于您特别要求内部重写,这将使 URL 保持为:/media/myspecialdir/image.jpg,但将从 /myspecialdir/image.jpg 加载内容。