2016-10-29 7 views
0

Amazon EC2 인스턴스에는 Pyramid 서버와 NodeJS 서버가 있습니다. NodeJS 서버는 프론트 엔드의 역할을하며 공용 DNS를 사용하여 페이지를 볼 수 있도록 보안 그룹을 업데이트했습니다.AWS EC2 인스턴스 내부 서버 액세스

피라미드 서버는 백엔드 역할을하고 프론트 엔드는 http://0.0.0.0:8002/에 의해 액세스합니다. 하지만 백엔드에 http 호출을하면 Failed to load resource: net::ERR_ADDRESS_INVALID 오류 메시지가 나타납니다.

보안 그룹에 규칙을 추가하거나 iptables 등을 업데이트해야합니까?

답변

1

이러한 서비스가 모두 동일한 서버에서 실행되는 경우 서버에서 네트워크 트래픽을 보내지 않아야하므로 보안 그룹이 여기에서 문제가되지 않습니다.

질문은, 왜 여기에 0.0.0.0을 사용하고 있습니까? 아마도 피라미드 서버를 0.0.0.0에서 수신 대기하도록 구성했을 것입니다. 실제로는 "모든 IP 주소에서 수신 대기"를 의미합니다. 그러나 동일한 서버에서 실행중인 다른 서비스에서 서비스에 연결하려면 http://127.0.0.1:8002/ 또는 http://localhost:8002/을 사용해야합니다.

+0

의미가 있습니다 ... 경로를 업데이트했지만 여전히 동일한 오류가 발생합니다. 그러나 오류의 출처는 0.0.0.0 : 8002에서 angular.js : 11442로 변경되었습니다. 나는 그것을 크롬으로보고있다. – Niel

+0

기다리십시오. angular.js가 Pyramid 서버에 액세스하려고하면 인터넷 브라우저를 통해 액세스 할 수 있도록 열어야합니다. AngularJS 코드는 서버가 아닌 브라우저에서 실행됩니다. 이것은 NodeJS가 이것에 접근하려고 시도한 것과 완전히 다릅니다. Angular가 서버에 액세스하려고하면 보안 그룹에서 포트를 열고 서버의 공용 IP 주소 (또는 도메인 이름)를 사용해야합니다. –

+0

고맙습니다. 이미 AWS에서 http 포트 80을 열었고 내 iptables에서 포트 80을 포워드 포트로 포워딩합니다. 그렇다면 포트 80을 포트 8002로 전달해야합니까? – Niel

관련 문제