Intereting Posts
Начало работы с руководством по быстрому старту cakephp-file-storage Ошибка Google Recaptcha, вход в систему без завершения головоломки, но показывает тик Переопределить зависимость базовой базы PHP в композиторе Предупреждение: для работы OpenCart необходимо загрузить расширение MySQL Как перенаправить ошибки, сгенерированные в Bootstrap, на ErrorController? Сделать белый прозрачным только снаружи Как зарегистрировать пользователя в сеансе в функциональном тесте в Symfony 2.3? Многострочные графики Highcharts Как извлечь весь текст перед символом «@» в строке Предупреждение: mysqli_query (): Не удалось получить mysqli Paypal IPN всегда возвращает «payment_status: Pending» в песочнице? PHP-массив vs в описании метода и переменной Как удалить одинарные кавычки в инструкции для подготовки? Предупреждение: ftp_get (): успешное удаление операции Как создать каталог для каталога продукции im?

Вы не можете получить доступ к этой странице напрямую – HybridAuth Social Login

Я использую социальный плагин HybridAuth на своем веб-сайте для входа в систему с facebook и других веб-сайтов,

все работает нормально, но когда я проверил на других компьютерах, произошла ошибка:

Вы не можете получить доступ к этой странице напрямую

и я заметил, что ошибка возникает, когда браузер использует WWW в адресной строке, браузер на том же компьютере, например: opera не использует www поэтому в этих браузерах нет ошибки.

Пожалуйста, помогите мне, как я могу исправить эту ошибку, поэтому логин может быть выполнен из любого браузера.

Реазен – это потому, что обратный вызов Facebook в разных php-сеансах и информация о настройке доступа не доступны из сеанса звонящего. Посмотрите на Endpoint.php, если (! $ Storage-> config («CONFIG»)) … Раньше было то, что я использую на своем сайте 127.0.0.1, но return_uri был с localhost из-за ограничений Facebook. В этом случае PHP строит разные сеансы.

добавление "www." к URL-адресу разрешается проблема.

После добавления этого поверх моего контроллера он начал работать

 if (session_status() == PHP_SESSION_NONE) { @session_id($_COOKIE['CAKEPHP']); @session_start(); @session_name('CAKEPHP'); } 

Читайте здесь https://github.com/hybridauth/CakePHP-HybridAuth/pull/1

Те, кто сталкивается с сообщением об ошибке «Вы не можете получить доступ к этой странице напрямую».

Попробуйте добавить @session_start(); в верхней части ваших файлов.

Это может быть связано с использованием специального обработчика сеанса, который устанавливается session_set_save_handler() . Я решил эту проблему, добавив собственный обработчик сеанса в верхней части hybridauth/index.php (расположенный в том же live.php и config.php и live.php ). Это заставляет Hybrid Auth использовать ваш пользовательский обработчик сеанса.