据我所知,[R]标志强制重定向到浏览器。我理解的方式是它将“重绘”浏览器地址栏中的URL。
所以
RewriteRule test en/students/ [R]
会将此地址http://mydomain.com/test
更改为:http://mydomain.com/en/students
但是如果我在上面的例子中遗漏了[R],它应该还是带我到/ en / students页面,如果不是的话?我的理解是它仍应该转到该页面,但地址栏根本不会更新。
如果我错了,请解除我的想法。否则,我需要帮助理解为什么它不适合我的情况?是因为之后WordPress需要的RewriteRules吗? WordPress总是通过分析用于调用其引擎的ACTUAL URI来解决问题,还是可以访问这个RewriteEngine产品的“隐藏”URI?
答案 0 :(得分:0)
[R]使重写成为重定向。因此浏览器将发送到新的URL。正常重写由服务器处理,用户无法看到实际目标是什么。
答案 1 :(得分:0)
如果没有[R]
,请求就是这样的:
http://mydomain.com/test
。http://mydomain.com/en/students
。http://mydomain.com/en/students
的内容。浏览器不知道URI是在内部更改的。使用[R]
,请求如下:
http://mydomain.com/test
。http://mydomain.com/en/students
。http://mydomain.com/en/students
(也可能会更改状态栏)。http://mydomain.com/en/students
。我只能猜测在前一种情况下,Wordpress正在访问请求的URI而不是重写的URI。