我有一个表格,每行代表一个页面。列title
包含页面名称。加载页面时,原始网址如下所示:www.mysite.com/?q=france
,然后我会快速查找数据库WHERE title = 'france'
,就是这样。我现在正在使用htaccess使网址变得更友好。像这样:RewriteRule ^([a-zA-Z0-9#%@\s\(\)\[\]\-]+)$ page.php?q=$1
,所以我可以使用www.mysite.com/france
。我遇到的问题是当标题有一个&符时,比如'one&二'。查找失败。我试过了
\&
添加到htaccess,然后虽然www.mysite.com/?q=one %26 two
确实有效,但这两个都失败了。
有没有办法让我使用“干净”的网址?
TIA!
答案 0 :(得分:7)
两件事:
%26
匹配,只想与&
匹配。您现在需要重新编码 &
回%26
,因为它被放置在查询字符串中,因此您需要使用{{ 1}}标志。所以像这样:
B