HybridAuth работает в локальной сети, но не при доступе за пределами моей сети

Я настроил HybridAuth на своем веб-сервере. У меня есть базовая html-страница, на которой отображаются 3 варианта входа в систему для Google, Facebook или Twitter. Для тестирования на моем домашнем компьютере я установил файл config.php следующим образом:

"base_url" => "http://my.local.ip.address/hybridauth-2.1.2/hybridauth/index.php",

До сих пор с этой настройкой выбор параметра «Войти через Twitter» работал, и я мог получить некоторую базовую информацию о профиле от пользователя. Однако Facebook возвращает следующее сообщение:

  • Данный URL-адрес не разрешен конфигурацией приложения.: Один или несколько указанных URL-адресов не разрешены настройками приложения. Он должен соответствовать URL-адресу веб-сайта или URL-адресу холста, либо домен должен быть поддоменом одного из доменов приложения.

При попытке Google он возвращает это:

-Недопустимое значение параметра для redirect_uri: необработанные IP-адреса не допускаются: http://my.local.ip.address/hybridauth-2.1.2/hybridauth/?hauth.done=Google

Как примечание выше, «my.local.ip.address» был моим фактическим локальным IP-адресом, но я был вынужден изменить его здесь. Однако, когда я изменяю config.php, чтобы он имел то, что нужно для нормального использования:

"base_url" => "http://myFQDN.com/hybridauth-2.1.2/hybridauth/index.php",

затем я вхожу в свой телефон (не в свою локальную сеть), и он просто перезагружает базовую HTML-страницу, независимо от того, какой вариант я выбираю.

Любая помощь или предложения были бы замечательными.

Примечание. Порт 80 заблокирован для моего интернет-провайдера, поэтому он перенаправляется с моего регистратора на другой порт, который затем перенаправляется внутри моего маршрутизатора. Если это возможно, это проблема, пожалуйста, дайте мне знать, а также. - Кроме того, все работает нормально, когда я просто размещаю стандартные .html страницы.

Спасибо


person TekGiant    schedule 30.08.2013    source источник


Ответы (1)


Я не думаю, что большинство провайдеров OAuth2 будут принимать ответы, которые не поступают из настроенного URL-адреса обратного вызова. Так что сделать редирект с реестром скорее всего не получится.

Вместо этого попробуйте настроить обратный вызов так, чтобы он выглядел так: http://www.yourdomain.com:openPort/hybridauth-2.1.2/hybridauth/index.php

Где openPort — номер порта, который ваш провайдер не будет блокировать. Затем в маршрутизаторе вы можете сделать переадресацию портов openPort->80 или просто запустить свой веб-сервер на openPort и убедиться, что маршрутизатор не блокирует запросы.

person Antoan Milkov    schedule 30.08.2013