如何启用封闭的(私人)Wiki进入爬行者?
-
24-10-2019 - |
题
我需要为爬行者提供私人Wiki的访问权限。
Wiki对所有匿名用户都关闭 - 您必须登录才能查看内容,但是我需要提供一个crawler(由用户代理字符串和单个IP识别)完整访问权限,以便可以索引内容。 。这是一个内部爬网,因此仅在成功登录时才能使用其资源。
关于如何启用单个客户端的访问(而不是用户,因为爬行者无法将其登录到Wiki中)有什么建议吗?
解决方案
实际上,有一个解决这个问题的方法。正如我提到的那样,爬网将使用特定的IP,它只会是使用它的爬网。如此快速而肮脏,但仍然是一种文明的方式是:
$crawler_ip = '1.2.3.4';
if ( $_SERVER['REMOTE_ADDR'] == $crawler_ip ) {
$wgGroupPermissions['*']['read'] = true;
}
简单,是吗? :)
其他提示
如果您可以访问数据库,则可以在Solar这样的系统中使用数据库爬网为您执行此操作。
您可以为爬行者制作自定义的用户组,假设我们称其为“爬行者”。因为无论如何它都必须登录最简单的解决方案。
只要给它阅读的权限:
$wgGroupPermissions['*']['read'] = false;
$wgGroupPermissions['crawler']['read'] = true;
参考: http://www.mediawiki.org/wiki/manual:user_rights#changing_group_permissions
编辑 嗯,我误读了。爬网可能不是登录帐户吗?保留,检查是否可以将权限设置为IP。
不隶属于 StackOverflow