퍼블릭 IP를 통해 EC2 인스턴스의 사이트에 액세스 할 수 없습니다.
저는 이틀 동안 EC2를 실험 해 왔고 제가 호스팅 한 샘플 사이트에 액세스 할 수있는 것만으로도 머리를 두들겨 왔습니다. 스택은 Thin 및 Nginx가있는 Rails 3.1.3입니다.
몇 가지 다른 구성을 시도하고 마침내 Nginx 자동 설치 스크립트를 실행했습니다.이 스크립트는 curl http://ec2-107-20-143-179.compute-1.amazonaws.com/을 수행 할 때 웹 페이지를 반환합니다 . . 그러나 내 브라우저를 거기에 가리키면 페이지를 찾을 수 없다고 말하기 전에 영원히 멈 춥니 다.
탄력적 IP 주소를 할당했고 포트 80을 통해 HTTP 액세스를 활성화했습니다.
나는 sysadmin 측에 대한 경험이 많지 않으며 기본적으로이 시점에서 난처합니다. 어떤 조언이라도 대단히 감사하겠습니다.
모든 IP에 대해 http 포트를 활성화 했습니까? 다음으로 이동하면됩니다.
EC2-> 보안 그룹-> 기본값 (또는 사용자 지정)-> 인바운드
그런 다음 HTTP에 대한 새 규칙을 만들고 소스로 할당해야합니다. 0.0.0.0/0
그렇게해야합니다.
AWS UI가 업데이트되었을 수 있지만 Deleteman의 답변을 기반으로합니다.
- EC2 대시 보드에 로그인
- 인스턴스> 인스턴스
- 작업 드롭 다운> 네트워킹> 보안 그룹 변경
- 나에게는 포트 22에서만 SSH 액세스를 허용 한 launch-wizard-1 만 허용 된 것을 볼 수 있습니다.
따라서 Deleteman이 언급했듯이 보안 그룹을 변경해야 할 수도 있습니다.
- EC2 대시 보드에 로그인
- 네트워크 및 보안> 보안 그룹
- 모든 그룹을 표시하려면 검색 상자에있을 수있는 모든 필터를 제거하십시오.
- 개인적으로 기본 VPC 보안 그룹을 편집했습니다. 이것은 저에게 샌드 박스이므로 프로젝트에 대한 보안 그룹을 생성하고 싶을 것입니다.
- 보안 그룹 확인란을 선택하고 작업 드롭 다운을 선택하고 "인바운드 규칙 편집"을 클릭합니다. 다음 인바운드 규칙을 사용하여 모두 작동하는지 확인했습니다.
- 인스턴스> 인스턴스> 설명을 다시 방문하면 보안 그룹과 규칙이 표시되어야합니다.
- 만족 스러우면 작동하면 아마 모든 트래픽을 HTTP 및 HTTPS로 대체 할 것입니다.
나는 이전에 내가 겪고 있던 비슷한 문제에 대한 해결책을 찾고있었습니다. 제 경우에는 EC2 인스턴스에 EC2 보안 그룹 외에도 자체 방화벽이 실행되고있는 것으로 나타났습니다. 'system-config-firewall'명령을 사용하면 포트를 열 수 있습니다. 포트 80 (HTTP) 및 3306 (MySQL)은 기본적으로 열리지 않았습니다. 22 (SSH)가 열렸습니다. 나는 또한 'yum install system-config-firewall'을해야했다.
요약하면 내 솔루션은 다음과 같습니다.
> yum install system-config-firewall
> system-config-firewall
이 답변은 ec2 인스턴스로 무엇을하고 있는지 모르는 초보자를위한 것입니다.
나는 같은 문제가 있었고 모든 보안 그룹 수정 사항을 아무 소용이 없었습니다.
결과적으로 명령 줄에서 서버를 켜야했습니다.
sudo service httpd start
때로는 어둡습니다. 퓨즈가 끊어져서가 아니라 스위치를 누르지 않았기 때문입니다.
보안 그룹도 생성했지만 인스턴스에 적용하지 않은 동일한 문제로 어려움을 겪었습니다. http에 대한 새 규칙을 작성하십시오. 그리고 오른쪽 클릭 인스턴스에서 적용하고 보안 그룹을 선택하고 할당하십시오.
Octopus의 대답은 Windows 컴퓨터를 제외하고는 저에게 맞는 대답이었습니다. Windows 방화벽으로 이동해야했고 규칙과 일치하지 않는 경우 VM에서 나오는 모든 트래픽을 차단했습니다. 포트 80은 규칙에서 활성화되지 않았기 때문에 하나만 추가하면되었습니다.
내 ec2 인스턴스 공용 IP가 작동하지 않기 때문에 웹 서버 (HTTP 서버) 를 설치하는 것을 잊었 기 때문에 매우 어리석은 일입니다. 이 질문에 답하는 것도 내가 한 것처럼 놓쳐서는 안되는 이유 중 하나 일 수 있습니다.
둘 중 하나를 설치할 수 있습니다.
nginx :
sudo apt-get install nginx
apache2 :
sudo apt-get install apache2
나는 우분투 또는 리눅스에 대한 경험이 없기 때문에 똑같은 문제가 있었고 내 머리가 나빠졌습니다. Parag의 답변으로 수정되었습니다.
내 ec2 인스턴스 공용 IP가 작동하지 않기 때문에 웹 서버 (HTTP 서버)를 설치하는 것을 잊었 기 때문에 매우 어리석은 일입니다. 이 질문에 답하는 것도 내가 한 것처럼 놓쳐서는 안되는 이유 중 하나 일 수 있습니다.
둘 중 하나를 설치할 수 있습니다.
nginx :
sudo apt-get install nginx
apache2 :
sudo apt-get install apache2
참고 URL : https://stackoverflow.com/questions/10253484/cant-access-site-on-ec2-instance-via-public-ip
'program tip' 카테고리의 다른 글
브라우저 개발자 도구를 비활성화하는 방법은 무엇입니까? (0) | 2020.12.06 |
---|---|
추가 설정 여부 확인 (0) | 2020.12.06 |
Python : MySQLdb 및 "라이브러리가로드되지 않음 : libmysqlclient.16.dylib" (0) | 2020.12.06 |
명령 줄에서 iOS 시뮬레이터를 어떻게 재설정 할 수 있습니까? (0) | 2020.12.06 |
단위 테스트 실행시 IntelliJ 오류 : $ {surefireArgLine} 주 클래스를 찾거나로드 할 수 없습니다. (0) | 2020.12.06 |