Htaccess阻止访问特定的Mediawiki页面?

时间:2012-07-08 06:54:56

标签: .htaccess mediawiki

在Mediawiki中,我正试图找到阻止访问某些模板页面的方法。我不希望我们的一些竞争对手查看我们复杂的代码并将其窃取为wiki(这在我不幸的粉丝中很常见)。所以当我们试图查看特定的模板页面时,我试图通过将人们重定向到主维基页面来尝试使用htaccess来实现这一点。然而,一切都没有发生。这是我使用的:

重定向/wiki/index.php?title=Template:Box /wiki/index.php

我不确定我想做什么是可能的,或者这是否应该如何使用htaccess!

提前谢谢!

2 个答案:

答案 0 :(得分:3)

简而言之:不要那样做!

让我引用MediaWiki文档的相关部分:MediaWiki is not designed to be a CMS, or to protect sensitive data. To the contrary, it was designed to be as open as possible. Thus it does not inherently support full featured, air-tight protection of private content.

MediaWiki无法保证部分读取权限:人们可以查看每个页面,也可以不查看任何页面。否则,会有漏洞来阅读您的宝贵数据。例如,TerryE使用重写规则的技巧绝对没有增加任何安全性:在其他几百种方法中,可以简单地将Template:Box更改为Template_:_Box,后者将在内部标准化为前者。 MW有时会将HTTP重定向到标准化标题,但这很容易克服。

答案 1 :(得分:1)

有很多方法可以在MW中获取模板内容,并且MW有自己的访问控制扩展,因此我认为您正在尝试治愈泄漏的筛子,但直接回答您的问题:

RewriteEngine On
RewriteBase   /

RewriteCond  %{QUERY_STRING} \bTemplate:Box\b
RewriteRule  wiki/index.php  $0?             [L]

如果URI是/wiki/index.php且查询字符串包含模板:框,则会删除查询参数。