Apache 301使用.htaccess重定向到相对路径

Apache 301使用.htaccess重定向到相对路径,apache,.htaccess,mod-rewrite,redirect,Apache,.htaccess,Mod Rewrite,Redirect,我希望能够将任何请求重定向到: http://example.com/foo 致: 问题是,这个.htaccess文件可以“安装”在任何目录的任何域上,所以我不知道绝对URL 我尝试过使用相对URL或HTTP\u HOST变量,但它们没有按预期工作 我需要使用301,因为我需要用户能够通过地址栏中的URL识别他们在仪表板上 有什么建议吗?如果.htaccess未放置在所讨论域的根目录或foo文件夹中,则此操作将无效。为什么?因为,如果它不在上述任何一个文件夹上,它将不允许您执行重定向http:

我希望能够将任何请求重定向到:

http://example.com/foo
致:

问题是,这个
.htaccess
文件可以“安装”在任何目录的任何域上,所以我不知道绝对URL

我尝试过使用相对URL或
HTTP\u HOST
变量,但它们没有按预期工作

我需要使用301,因为我需要用户能够通过地址栏中的URL识别他们在仪表板上


有什么建议吗?

如果
.htaccess
未放置在所讨论域的根目录或
foo
文件夹中,则此操作将无效。为什么?因为,如果它不在上述任何一个文件夹上,它将不允许您执行重定向http://example.com/foo/abc/123然后它将被重定向到
http://example.com/foo/abc/123/bar/dashboard
?@Prix谢谢你的信息,我担心。也许我可以对/bar/index.php?view=dashboard进行常规重写,然后根据view参数设置一个location头。@user3325134为什么
.htaccess
会在任何可能的文件夹上?我不明白为什么根目录上没有一个
.htaccess
?甚至与他们的目录相关的多级
.htaccess
。也许,如果你给出更好的例子,并告诉我们,如果你正在使用CMS或更多关于你的情况,我们可能会给你一个解决方案。但是现在你所说的非常模糊,特别是关于
.htaccess
是如何放置的。因为如果你想在开发环境中使用与在生产服务器上相同的.htaccess文件,该怎么办。在发展中,,所有站点文件可能位于
/Library/WebServer/Documents/mysite
中,我可能希望
/localhost/mysite/foo/abc/123
映射到
/localhost/mysite/foo/bar/dashboard/abc/123
,并且类似地具有
http://example.com/foo/abc/123
映射到
http://example.com/foo/bar/dashboard/abc/123
通过放置mysite目录中的单个文件。
http://example.com/foo/bar/dashboard