2013-12-10 37 views
0

我相信我经历了一个相当简单和常见的重写行为,但经过与.htaccess重写规则,阅读文档,尝试生成器和测试人员(天)等等我仍然没有进一步让这个重写发生。.htaccess重写不工作 - 怀疑字母数字字符/ backrefrences

我想重写的网址是:

http://www.mysite.com/products/adagio.php?prod=Adagio%20BankRec 

http://www.mysite.com/bankrec 

下什么也不做

Options +FollowSymlinks 
RewriteEngine On 
RewriteBase/ 
RewriteRule ^bankrec$ /products/adagio.php?prod=Adagio%20BankRec 

如果我能够编码斜杠:AllowEncodedSlashes On它打破了现场。另外,如果我添加[B]标志来表示逃逸后退,它会破坏网站。

任何人都可以帮我吗?重写规则让我觉得宇宙是没有秩序的。谢谢

回答

1

您需要转义%字符,否则mod_rewrite会尝试将其替换为%2。试试这个规则:

RewriteRule ^bankrec/?$ /products/adagio.php?prod=Adagio\%20BankRec [L,NE]