可重写的URL重写(更改地址栏中的URL)

dre*_*ves 4 apache url mod-rewrite friendly-url url-rewriting

我之前问过这个问题的补充:

Mod_rewrite不可见:当目标是文件时工作,而不是当它是目录时

现在我真的希望重写是明显的,因为我已经切换了URL方案,虽然我希望旧的链接工作,但我希望用户看到新的URL方案.

这样可行

RewriteRule ^oldscheme/(.*)/?$  newscheme/$1
Run Code Online (Sandbox Code Playgroud)

但地址栏中的URL仍为http://example.com/oldscheme/foo.

什么是进行可见重写的正确方法,最好只使用mod_rewrite,而不是使用位置重定向或类似的东西?

Mar*_*pel 6

由于我现在不能发表评论,我将在此处发布我对Ignacio评论的补充.

实际上你应该发布一个301(永久移动)重定向,因为你描述的是一个新的站点目录结构.所以你的RewriteRule应该读

RewriteRule ^oldscheme/(.*)/?$  newscheme/$1  [R=301]
Run Code Online (Sandbox Code Playgroud)