2012-05-06 93 views
0

我有一些网页具有以下URL结构:htaccess的规则 - 如何匹配,如果网址不包含特定字符串

/信息/ ID/125/

出于某种原因,谷歌已经收录页面看起来像/ details/125 /缺少/ id /部分。这会导致重复的内容问题。

所以我需要一个.htaccess RedirectMatch规则,因此,如果URL中包含/信息/但不包含/ ID /事后,重定向到404页。

我至今尝试过没有任何的运气:

RedirectMatch 404^/信息/(?! ID)/

在我的研究,我发现这个信息http://www.mycomputingart.com/programming/Z24.regexpadv.html我相信这是关系到什么我需要做但我无法理解它。

+0

这也可能对你有用:http://support.google.com/webmasters/bin/answer.py?hl=en&answer=139394 – Paulpro

+0

感谢。不幸的是,对于我的特殊情况,我需要使用htaccess来完成。 – user1377544

回答

0

为了你的需求:

RewriteEngine On 

RewriteCond %{REQUEST_URI} ^/details/.+$ 
RewriteRule !^/details/id/.+$ /b/ [R=404,L] 
+0

我很困惑。/b /部分是什么?我拥有不同网址结构的网页,并且您列出的重写规则根本不指定/ details /或/ id /段。从我非常有限的知识,从它的外观你的规则将捕获所有的URL。 – user1377544

+0

对不起。粘贴就像我检查我的服务器)看起来修改回答 –

+0

有我的htaccess中只是给出了一个错误500内部服务器错误。 – user1377544

相关问题