Как внести редактирование в белый список на определенных страницах в Mediawiki?

Итак, у меня есть сервер Mediawiki, работающий на моем raspberryPi, и я настроил его так, чтобы ничего нельзя было прочитать без входа в систему, кроме главной страницы и страницы под названием Public.

Я бы хотел, чтобы эта общедоступная страница была доступна не только для чтения незарегистрированными пользователями, но и для редактирования незарегистрированными пользователями (в отличие от остальной части вики, где вы должны войти в систему). Что-то вроде гостевой книги.

У меня есть ограничение на чтение в LocalSettings.php, настроенное следующим образом:

//Disable reading by anon users
$wgGroupPermissions['*']['read'] = false;
//Page Whitelist
$wgWhitelistRead = array ("Main_Page", "PUBLIC");

Это определенно работает для ограничения/разрешения чтения, но, похоже, нет переменной WhitelistEdit или любой другой переменной для редактирования белого списка, и я не нашел стабильного расширения для MW, которое позволяет это.

Итак, я думаю, что я спрашиваю: кто-нибудь знает способ внести в белый список незарегистрированное редактирование и чтение на одной странице Mediawiki? Спасибо!


person wollington    schedule 25.05.2017    source источник


Ответы (2)


MediaWiki по умолчанию не поддерживает сложные правила доступа. Возможно, существуют расширения, которые делают это, хотя я о них не знаю. Вероятно, довольно просто написать его с помощью хука userCan (или вы можно просто поместить хук прямо в файл конфигурации).

person Tgr    schedule 26.05.2017

На данный момент единственное, что я могу придумать, это разрешить редактирование для всех (включая анонимных пользователей) и частично защитить каждую страницу, кроме этой.

person Ken Hilton    schedule 18.07.2017