Вы не можете получить доступ к этой странице напрямую - HybridAuth Social Login
Я использую социальный плагин HybridAuth на своем веб-сайте для входа с Facebook и других веб-сайтов,
все работает нормально, но при проверке на других компьютерах возникает ошибка:
Вы не можете получить доступ к этой странице напрямую
и я заметил, что ошибка возникает при использовании браузера WWW
в адресной строке браузера на том же компьютере, например: опера не использует www
поэтому в этих браузерах нет ошибок.
Пожалуйста, помогите мне, как я могу исправить эту ошибку, чтобы войти можно было из любого браузера.
5 ответов
Причина в том, что Facebook перезванивает в другом php-сеансе и не может получить доступ к информации о конфигурации из сеанса вызывающего Посмотрите на Endpoint.php if (! $ Storage->config( "CONFIG")) ... Причина была в том, что я использую на своем сайте 127.0.0.1, но return_uri был на localhost из-за ограничений Facebook. В этом случае PHP создает разные сессии.
Те, кто сталкивается с сообщением об ошибке "Вы не можете получить доступ к этой странице напрямую".
Попробуй после добавления @session_start();
Заявление в верхней части ваших файлов.
После добавления этого поверх моего контроллера он начал работать
if (session_status() == PHP_SESSION_NONE) {
@session_id($_COOKIE['CAKEPHP']);
@session_start();
@session_name('CAKEPHP');
}
Читайте здесь https://github.com/hybridauth/CakePHP-HybridAuth/pull/1
Это может быть связано с использованием пользовательского обработчика сеанса, который устанавливается session_set_save_handler()
, Я решил эту проблему, добавив наш собственный обработчик сеанса вверху hybridauth/index.php
(находится в том же каталоге, что и config.php
а также live.php
). Это заставляет Hybrid Auth использовать ваш собственный обработчик сеанса.