简体   繁体   English

正则表达式在RedirectMatch中不起作用

[英]Regex not working in RedirectMatch

I want to match a particular regex and want to redirect it to main page. 我想匹配一个特定的正则表达式,并希望将其重定向到主页。 The condition is if the word 'item' is preceded by main domain then it should redirect. 条件是如果单词“ item”在主域之前,则它应该重定向。 eg 例如

www.summitaviation.in/item/foobar.html -> www.summitaviation.in www.summitaviation.in/item/foobar.html-> www.summitaviation.in

while

www.summitaviation.in/foo/item/bar.html -> should not redirect. www.summitaviation.in/foo/item/bar.html->不应重定向。

I'm using 我正在使用

RedirectMatch .*summitaviation\.in.item.*  http://www.summitaviation.in

but it's not working!! 但它不起作用! Please help. 请帮忙。

The hostname isn't part of the match, you need to start with /item : 主机名不是匹配项的一部分,您需要以/item开头:

RedirectMatch ^/item/ http://www.summitaviation.in

If you've got multiple hosts pointing to the same document root, then you need to use mod_rewrite: 如果您有多个主机指向同一个文档根目录,则需要使用mod_rewrite:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?summitaviation\.in$ [NC]
RewriteRule ^item/ http://www.summitaviation.in [L,R]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM