我的网址格式如下:
http://domain.com/checkout/nonce/701fe0f652/order/108/?token=EC-0DS37792JX3680821
我尝试使用.htaccess:
将其转换为干净的网址RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?token=(.*)$ /index.php/$1/token/$2/ [R]
RewriteRule不知何故不起作用。我已经使用http://jakarta.apache.org/regexp/applet.html对其进行了测试,结果是完全匹配。
我正在使用CodeIgniter,并且已经测试直接放置干净的URL(http://domain.com/checkout/nonce/701fe0f652/order/108/token/EC-0DS37792JX3680821)没有任何问题。
有人能帮助我吗?
谢谢。
最好的问候。
答案 0 :(得分:0)
我找到了答案
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{QUERY_STRING} ^token=([a-zA-Z0-9\-]+)
RewriteRule ^([a-z0-9\/\-.]+)$ $1token/%1? [R=301,L]