Virtual Box로 생성 된 VM에서 실행되는 Ubuntu 웹 서버에 연결


2

개발 작업이 VPS를 방해하지 않도록 로컬 개발 환경을 설정하려고합니다. 프로덕션 코드 전용으로 남겨 둡니다. 웹 브라우저를 통해 서버에 연결하는 데 문제가 있으며 "Safari가 서버에 연결할 수 없습니다"라는 오류가 계속 발생합니다. 나는 시도 / 설립했다 :

  • httpd.conf 파일에 ServerName을 추가하여 localhost로 설정
  • ports.conf 파일에서 Listen은 80으로 설정되어 있습니다. * : 80으로 변경하려고했습니다.

내 상황의 "조건"은 다음과 같습니다.

  • 호스트 OS : OSX 10.9 Mavericks
  • 게스트 OS : Ubuntu Server 12.04.3
  • Virtual Box를 사용하여 VM 만들기

서버에 SSH로 연결할 수는 있지만 브라우저에서 http를 통해 서버에 액세스 할 수 없습니다.


몇 가지 확인 만 : 구성을 수정 한 후 다시 시작한 것입니까? Apache가 실제로 서버 IP 주소의 포트 80에서 수신 대기합니까? 서버에 대한 방화벽 차단 포트 80이 있는지 확인 했습니까?
Teun Vink

예, 아파치를 다시 시작했습니다. 두 번째 질문에 관해서는 구성 파일에 "Listen 80"이라고 쓰여 있습니다. 마지막으로, 내 컴퓨터의 방화벽이 활성화되어 있지 않으며 "ufw"가 설치되지 않은 것을 고려하여 서버에 방화벽이 있다고 생각하지 않습니다.
Alec Carpenter

2와 관련하여 구성과 실제로 발생하는 작업간에 차이가있을 수 있습니다. 를 사용하여 확인하십시오 lsof -i. 방화벽과 관련하여 :로 확인하십시오 iptables -xnvL. ufw는 래퍼 일뿐입니다.
Teun Vink

첫 번째 명령을 실행하면 8 줄이 인쇄되고 그 중 3 줄에는 " : http (LISTEN)"이 포함되며 " : 80" 은 표시되지 않습니다 . 두 번째 명령은 체인 INPUT, FORWARD 및 OUTPUT이 모두 ACCEPT라고 말합니다.
Alec Carpenter

아파치가 듣고 있고 방화벽이 없습니다. 서버의 포트 80에 텔넷 연결하면 어떻게됩니까?
Teun Vink

답변:


1

도와 준 사람들 덕분에 알아낼 수있었습니다!

내 솔루션은 VirtualBox에서 가상 머신의 네트워크 설정에 포트 전달 규칙을 추가하는 것이 었습니다. (기존 가상 머신-> 설정-> 네트워크-> 포트 전달 선택) 포트 전달 내부에 다음과 같은 규칙을 추가했습니다.

127.0.0.1:8080 (앞으로) 10.0.2.15:80

http://127.0.0.1:8080브라우저에 입력 하면 기본 "It Works"페이지가 표시됩니다. 이것은 포트 80을 차단하는 것이 있다고 믿게하지만, 이것이 작동하면 시도하고 고칠 필요가 없습니다.


당신이 지금 말하고있는 것을 기반으로 당신은 그것을 잘못 테스트하고있었습니다. 포트 포워드가없는 컴퓨터의 로컬 호스트는 10.0.2.15와 다르므로 작동하지 않습니다. 서버에서 사용하는 IP이므로 브라우저에서 10.0.2.15를 열려고 가정했습니다.
Teun Vink

@TeunVink 나는 그것을 시도했지만 여전히 "연결할 수 없습니다"오류가 발생합니다.
Alec Carpenter
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.