django-social-auth redirect_uri jest nieprawidłowy
Waliłem głową w ścianę, próbując uruchomić django-social-auth. Mój serwer dev jest serwerem w sieci prywatnej w mojej pracy, dostęp do adresu IP 10.0.0 *. Na tym serwerze działa wiele aplikacji django. Oto konfiguracja dla tej aplikacji:
# Perceptual
location /perceptual/static/ {
alias /opt/perceptual/perceptual/static/;
}
location /perceptual/ {
proxy_pass http://127.0.0.1:8001;
}
Używam w tym celu aplikacji backbone.js z mojego katalogu statycznego. Mogę więc przejść do 10.0.0.54/perceptual/static/ i uzyskać moją aplikację szkieletową.
TERAZ, Mam mój Facebook APP_ID i FACEBOOK_API_SECRET w moim pliku ustawień, wszystkie poprawnie skonfigurowane. Mam także linię w moim pliku / etc / hosts na moimrzeczywisty maszyna (nie serwer dev), która kierujemyapp.com do10.0.0.54, a moja konfiguracja aplikacji Facebook dla domen aplikacji i adresu URL witryny wygląda tak:
App Domains: perceptual.com
Site URL: http://perceptual.com
Problem polega na tym, że za każdym razem, gdy przechodzę na stronę perceptual.com/perceptual/static/login/facebook/, pojawia się ten błąd:
Oto, jak wygląda mój adres URL, gdy otrzymuję ten błąd:https://www.facebook.com/dialog/oauth?scope=email&state=PC0OhXnEuaW2wcUuINO0rMSMAtVDuMbn&redirect_uri=http%3A%2F%2F127.0.0.1%3A8001%2Fperceptual%2Fcomplete%2Ffacebook%2F%3Fredirect_state%3DPC0OhXnEuaW2wcUuINO0rMSMAtVDuMbn&client_id=419178148154217
Widzisz więc z adresu URL, który jest moim redirect_urihttp://localhost:8001
- Ale oczywiście nie chcę, żeby tak było. Jak tylko zmienię go na perceptual.com, robi się to trochę dalej: wtedy pojawia się ten błąd:
AuthFailed at /perceptual/complete/facebook/
Authentication failed: There was an error authenticating the app
Oto mojatraceback, jeśli to pomoże
W tym momencie utknąłem - jak zmusić serwer do zmiany redirect_uri na coś, co Facebook może obsłużyć, zamiast 127.0.0.1:8000? Domyślam się, że pochodzi z Django, ale nie wiem, jak to zmienić. Następnie, gdy już zostanie naprawiony, nadal nie może w pełni uwierzytelnić się i otrzyma błąd opisany powyżej. Każda pomoc byłaby bardzo mile widziana. Dzięki wielkie!