我有网址,像这样的:重写规则:正则表达式来从链接中删除
我党/ viewparty/243-党在柏林-2013.html
哪里URL的可变部分是:
243-党在柏林-2013.html
我NEET得到像网址:
个事件/党在柏林-2013.html
我怎么能与Apache重写规则做呢?我设法删除了“my-party/viewparty”,但我无法删除部分变量链接。 非常感谢您
亚历山德罗
我有网址,像这样的:重写规则:正则表达式来从链接中删除
我党/ viewparty/243-党在柏林-2013.html
哪里URL的可变部分是:
243-党在柏林-2013.html
我NEET得到像网址:
个事件/党在柏林-2013.html
我怎么能与Apache重写规则做呢?我设法删除了“my-party/viewparty”,但我无法删除部分变量链接。 非常感谢您
亚历山德罗
下面将格式映射任何URI:
my-party/viewparty/<digits>-<rest-of-file-name>.html
到
/events/<rest-of-file-name>.html
RewriteEngine On
RewriteCond %{REQUEST_URI} my-party/viewparty/\d+-([^\.]*\.html)$
RewriteRule .* /events/%1 [L]
的它的工作方式是捕捉请求URI的最后一部分(用美元符号表示),以.html
结尾,并在my-party/viewparty/\d+-
之前,其中\d+
表示一串数字,其中有一个数字最小长度为一位数字。然后在RewriteRule
中将此捕获的模式(由%1
表示)附加到/events/
。
如果你想重定向(301 Moved Permanently),以新的URI,使用方法:
RewriteEngine On
RewriteCond %{REQUEST_URI} my-party/viewparty/\d+-([^\.]*\.html)$
RewriteRule .* /events/%1 [R=301,L]
而且,如果party-in-berlin-2013
部分没有变化,那么你可以只需更换RewriteCond
本:
RewriteCond %{REQUEST_URI} my-party/viewparty/\d+-(party-in-berlin-2013\.html)$
这个问题不是很清楚。你想只删除243-前缀或完全替换URL中的最后一个路径元素(what-ever-party.html)与派对-in-berlin-2013.html? – heximal 2013-02-12 10:24:16
您好,我需要用events/party-in-berlin-2013.html替换我的party/viewparty/243-party-in-berlin-2013.html网址,其中url的243部分是可变的 – AleCat83 2013-02-12 10:27:38