无需重定向即可将目录重写到另一个目录

无需重定向即可将目录重写到另一个目录

我有以下重写规则:

RewriteRule ^support/(.*)$ /blog/support/$1 [R=301,NC,L]

但是,它所做的只是简单的重定向。我想要的是/support显示的内容,/blog/support而不更改 URL /support。我该怎么做?

此外,上述操作仅在/support带有尾部斜杠时才有效。

答案1

如果/blog/support对应于文件系统中的一个位置,比如说/var/www/blog/support,那么你就可以使用

Alias /support /var/www/blog/support

文档因为 Alias 指令规定第二个参数必须是文件或目录路径,而不是另一个 URL。

R=301,如果您只想要内部重定向,以便用户看不到 URL 更改,那么您可能只需从 中的标志中删除即可RewriteRule

为了避免要求尾随 /,请测试斜线或行尾:

RewriteRule ^support(/.*|$) /blog/support$1 [NC,L]

相关内容