我有以下凌乱的网址:
http://localhost/writer/show?post_url=1rk8wy0h4
但是,我希望它改为:
http://localhost/writer/show/1rk8wy0h4
这是找到URL的混乱部分的正则表达式:
/\?post_url=/
使用此表达式的最佳方法是什么,以便用简单的/
替换它?
我当前的.htaccess
档案:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
这就是我用JavaScript做的事情
s = s.replace(/\?post_url=/, '/');
但我不确定如何用mod_rewrite替换。
什么是mod_rewrite等价物?
答案 0 :(得分:0)
它类似,但您希望与%{THE_REQUEST}
变量匹配。如下所示:
RewriteEngine On
RewriteCond %{THE_REQUEST} \ /+writer/show\?post_url=([^&\ ]+)
RewriteRule ^ /writer/show/%1? [L,R]
RewriteRule ^show/(.+)$ /writer/show?post_url=$1 [L]
这些规则需要位于编写器文件夹。