Сбои в авторизации на сайтах с использованием OAuth Яндекса
Уважаемые пользователи DataLife Engine,
С недавних пор на всех сайтах независимо от версии DataLife Engine перестала работать система авторизации на сайтах с использованием яндекс аккаунта. Анализ проблемы показал что проблема кроется не в DataLife Engine, а с тем, что сервис яндекса по непонятным причинам отправляет пользователей на некорректный адрес на сайте применяя двойное экранирование символа амперсанда в адресе. Мы отправили разработчикам яндекса описание проблемы, и надеемся данная проблема будет ими оперативно устранена.
На данный момент мы предлагаем вам внести временные исправления, чтобы DLE принимал и обрабатывал эти некорректные адреса, чтобы авторизация опять заработала на ваших сайтах. Для этого откройте файл engine/classes/social.class.php и найдите в нем:
function __construct( $social_config ){
Ниже добавьте:
if( isset($_GET['amp;provider']) AND $_GET['amp;provider'] AND !isset($_GET['provider']) ) {$_GET['provider'] = $_GET['amp;provider'];}
Это восстановит работу авторизации на ваших сайтах, несмотря на некорректные параметры, которые отправляет Яндекс.
С уважением,
Служба поддержки DataLife Engine
Источник: DLE-news.ru