я использую MediaWiki 1.27.0 на Ubuntu 14.04Mediawiki, не может войти в систему после изменения пароля
Я не настроить электронную почту на сервере, поэтому я собирался сбросить пароли пользователей с помощью maintenance/changePassword.php
, который предоставляет mediawiki.
Когда я запустил свою команду
php maintenance/changePassword.php --conf=/var/www/html/LocalSettings.php --user=myuser --password=newPassword
Он сказал Password set for myuser
Теперь никто не может войти, и каждый получает то же ошибку
Там, кажется, проблема с вашим сеанс входа в систему; это действие было отменено в качестве меры предосторожности против захвата сессии. Вернитесь на предыдущую страницу, перезагрузите эту страницу и повторите попытку.
Я в затруднении относительно того, как это исправить. Я нахожу других, у кого была эта ошибка со старой версией mediawiki, и следующая версия mediawiki, похоже, исправила их проблему. Но, очевидно, это не может решить эту проблему.
Любая помощь приветствуется.
То, что я пытался
Я просмотрел учетных записей пользователей в базе данных, чтобы убедиться, что их изменение пароля сценарий не сделал ничего странного, и все это выглядит прекрасно.
Я пробовал this crazy solution, который сказал, что вы должны создать каталог tmp в корневой папке mediawiki и предоставить ему доступ 777. Я попробовал это, просто для хихиканья, а затем удалил каталог.
Первое, что нужно проверить на ошибках сеанса, - это то, работает ли сеанс (на вашем сервере установлен сеансовый файл cookie? Его браузер отправляет обратно?). Во-вторых, проверьте каналы журнала 'session' и' authentication', которые могут дать вам намек на то, где все идет не так. – Tgr
FWIW сообщение об ошибке, которое вы цитируете, показано, когда токены CSRF не совпадают. Когда вы открываете форму входа, сервер сохраняет случайный токен на сеанс, а также помещает его в форму входа в скрытое поле.Согласование маркера, поданного с формой против токена в сеансе, докажет, что вы являетесь и защищаете от [подделок подбора сайтов] (https://en.wikipedia.org/wiki/Cross-site_request_forgery). Если это не сработает, либо сервер не может выполнить запись на сеанс (например, '$ wgSessionCacheType' - это что-то не полезно), либо установка cookie сеанса завершается с ошибкой. – Tgr
Благодарим вас за помощь @Tgr. У меня на самом деле нет переменной '' '' $ wgSessionCacheType'' в моем LocalSettings.php. Как проверить каналы журнала '' 'session'' и' '' authentication'''? – trueCamelType