Perl - .htaccess 如何通过弹出部分字符串来重定向传入查询
Perl - .htaccess How do I redirect incoming query by popping off part of string
我需要将此功能添加到我的 .htaccess 文件中。
我有来自其他域的查询。
http://Domain.com/some-folder/blue-widget/large/bluewidget-number-yada-60467.htm
我需要它去:
http://Domain.com/60467
我找到了一种在查询末尾匹配 5 位或 6 位数字 .htm 的方法,但是,如何将其实现为 "redirect"?
<FilesMatch "\d{5,6}\.htm?$">
类似于:
RewriteRule \d{5,6}\.htm?$ http://Domain.com/60467
我需要先重写条件吗?
RewriteCond %{QUERY_STRING} (\d{5,6}\.htm?$)
这是困难的部分。
如果查询是从 .htaccess 所在的域 (Domain.com) 生成的,是否也有可能让它忽略该规则?没必要,但我也想做。
我真的想不通..
此 URL:
中没有任何查询字符串
http://Domain.com/some-folder/blue-widget/large/bluewidget-number-yada-60467.htm
URL 中没有 ?
。要重定向这样的东西,你不需要条件,这样的东西应该足够好了:
RedirectMatch -([0-9]+)\.htm$ /
或者如果您需要使用 mod_rewrite:
RewriteRUle -([0-9]+)\.htm$ / [L,R]
我需要将此功能添加到我的 .htaccess 文件中。
我有来自其他域的查询。
http://Domain.com/some-folder/blue-widget/large/bluewidget-number-yada-60467.htm
我需要它去:
http://Domain.com/60467
我找到了一种在查询末尾匹配 5 位或 6 位数字 .htm 的方法,但是,如何将其实现为 "redirect"?
<FilesMatch "\d{5,6}\.htm?$">
类似于:
RewriteRule \d{5,6}\.htm?$ http://Domain.com/60467
我需要先重写条件吗?
RewriteCond %{QUERY_STRING} (\d{5,6}\.htm?$)
这是困难的部分。 如果查询是从 .htaccess 所在的域 (Domain.com) 生成的,是否也有可能让它忽略该规则?没必要,但我也想做。
我真的想不通..
此 URL:
中没有任何查询字符串http://Domain.com/some-folder/blue-widget/large/bluewidget-number-yada-60467.htm
URL 中没有 ?
。要重定向这样的东西,你不需要条件,这样的东西应该足够好了:
RedirectMatch -([0-9]+)\.htm$ /
或者如果您需要使用 mod_rewrite:
RewriteRUle -([0-9]+)\.htm$ / [L,R]