我只想删除一部分url,我认为这是最简单的方法。
这就是我的URL当前的样子:
subdomain.domain.com/site/blog/?action=viewArticle&url=$postTile
我想删除:
?action=viewArticle&url=
所以我最终得到了这样的东西:
subdomain.domain.com/site/blog/$postTitle
我试过下面的,但我没有快乐:
RewriteEngine on
RewriteRule ^ subdomain.domain.com/site/bwc/(blog)/(.*)/$ /bwc/blog/?action=viewArticle&url=$2
请帮忙——我想我需要使用MOD_REWRITE,但我不太确定如何使用。我还需要一个允许友好URL链接的解决方案。htaccess/apache能做到这一点吗?
RewriteRule ^site/bwc/blog/(.*?)/$ site/blog/?action=viewArticle&url=$1
但请注意,在这种情况下,您的url将始终必须以/
结尾才能正常工作
重写规则所做的基本上是php对URI的str_replace
。它将运行您在请求URI上提供的正则表达式,并将其替换为您提供的替换。为了更好地理解,你需要善于使用正则表达式,有人说正则表达式本身就是一种语言。(.*?)
是正则表达式中的一个捕获组。捕获组可以作为替换字符串中的$'d
访问,其中'd
将是模式中捕获组的连续编号。
长话短说,如果你发送了一个与regex模式匹配的请求,它会抓取它,进行替换并将其发送到服务器,而不是你输入的地址。