Apache 如何停止URL重写中附加的字符串?

Apache 如何停止URL重写中附加的字符串?,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,我实现了一个简单的.htaccess来重写特定目录上的任何请求 它在一定程度上起作用。如果在尾部斜杠后没有任何内容的请求,那么它会很好地重定向。如果您在尾部斜杠之后添加了任何内容,它将被附加到您试图重新定向到的URL的末尾 比如说, 您的请求:/dir/ 您可以重定向到:/holdingpage.htm 不过,那很好 您可以请求:/dir/index.htm 您可以重定向到:/holdingpage.htmlindex.htm 请注意,URL末尾追加了index.htm RewriteEngin

我实现了一个简单的.htaccess来重写特定目录上的任何请求

它在一定程度上起作用。如果在尾部斜杠后没有任何内容的请求,那么它会很好地重定向。如果您在尾部斜杠之后添加了任何内容,它将被附加到您试图重新定向到的URL的末尾

比如说,

您的请求:/dir/ 您可以重定向到:/holdingpage.htm 不过,那很好

您可以请求:/dir/index.htm 您可以重定向到:/holdingpage.htmlindex.htm 请注意,URL末尾追加了index.htm

RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^185\.132\.
RewriteRule ^(.*)$ http://www.example.com/sub/index_rewrite.shtml$1  [R=302,L] 
非常感谢您的帮助。

您的URL末尾有$1,这意味着匹配的所有内容都将附加到URL。别管它了:

 RewriteRule     ^(.*)$  http://www.example.com/sub/index_rewrite.shtml  [R=302,L] 
参考:

反向引用是格式为$N N=0..9的标识符,它将被匹配模式的第N组的内容替换

所以那你希望它怎么工作?