Ok 나는이 답변이 무엇인지 잘 모르겠지만 내 직장에서 수석 개발자의 조언에 따라 무엇이 나를 위해 일했는지 알려 드리겠습니다. 저는 Ruby on Rails에서 일하고 있으며 Facebook의 JavaScript 코드를 사용하여 액세스 토큰을 얻습니다.
문제 : 인증을 위해 Facebook은 주소 표시 줄에서 URL을 가져와 파일에있는 URL과 비교합니다. localhost:3000
어떤 이유로 든 사용할 수 없습니다 . 그러나 같은 완전히 만들어 낸 도메인 이름을 사용할 수 있습니다 yoursite.dev
로컬 서버를 실행하고 지정하여 yoursite.dev
에 127.0.0.1:3000
또는 어디서든 로컬 호스트를 가리키는했다.
1 단계 : Nginx 설치 또는 업데이트
$ brew install nginx
(설치) 또는 $ brew upgrade nginx
(업데이트)
2 단계 : nginx 구성 파일 열기
/usr/local/etc/nginx/nginx.conf
(일반적으로 여기)
/opt/boxen/config/nginx/nginx.conf
(Boxen을 사용하는 경우)
3 단계이 코드를 http {}
블록에 추가합니다.
proxy_pass
가리키고 싶은 곳으로 교체하십시오 yoursite.dev
. 제 경우에는 localhost : 3000 또는 이와 동등한 것을 대체했습니다.127.0.0.1:3000
server {
listen yoursite.dev:80;
server_name yoursite.dev;
location / {
proxy_pass http://127.0.0.1:3000;
}
}
4 단계 : /etc/hosts
Mac에서 포함 할 호스트 파일 편집
127.0.0.1 yoursite.dev
이 파일은 도메인을 localhost로 지정합니다. Nginx는 localhost에서 수신 대기하고 규칙과 일치하면 리디렉션합니다.
5 단계 : 앞으로 개발 환경을 사용할 때마다 Facebook이 올바르게 로그인하도록하는 yoursite.dev
대신 주소 표시 줄에서 를 사용 localhost:3000
합니다.