添加假foders与apache mod_rewrite一起使用

时间:2016-04-05 13:35:31

标签: regex apache mod-rewrite seo

我想重写

http://site.tld/fake1/fake2/page?options

http://site.tld/page?options

基本上所有事情都是在最后一次斜线之后,所以事先不知道任何伪造的名字

2 个答案:

答案 0 :(得分:0)

您可以使用捕获组并替换如下。

正则表达式: ^(.*\.tld\/).*?([^\/]*$)$

<强>解释

  • ^(.*\.tld\/)匹配开头部分直到域名。

  • .*?fake1/fake2/

  • 相匹配
  • ([^\/]*$)$与网址的后半部分相匹配。

替换为:替换为后引用群组\1\2

<强> Regex101 Demo

答案 1 :(得分:0)

首先,确保您已在Apache配置文件中启用 mod_rewrite 并允许 htaccess

然后,将此代码放入您的htaccess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^.+?/([^/]+)$ /$1 [L,QSA]