내 네트워크 내부에있는 컴퓨터에서 Apache에 액세스하고 싶습니다. 문제는 Apache가 가상 컴퓨터에서 실행되고 있다는 것입니다.
도표
( [A: VM Running Apache] -- [B: Actual machine] ) ------ [C: Actual machine]
IP :
A: 192.168.55.55
B: 192.168.1.25
B에서 A에 액세스 할 수 있지만 C에서는 액세스 할 수 없습니다. (잠시 후 '서버 연결 시간이 초과되었습니다'라는 메시지가 표시됩니다).
B : 네트워크 정보
PD : 아파치가 VM 내부에있는 이유는 제가 Vagrant를 사용하고 있기 때문입니다. 그것이 어떤 것과 관련이 있는지 확실하지 않지만 어쨌든 언급 할 것이라고 생각했습니다.
이것이 제 홈 네트워크에서 작동하도록하기 위해 제가 한 것입니다.
실제로 Vagrant를 실행하는 머신에서 Vagrantfile 및 포트 포워드 8088 (또는 선택한 포트 번호)을 호스트 ( '실제 머신') 에서 게스트의 포트 80 ( 'VM Running Apache')으로 편집합니다. 그것).
정상적인 방랑자를 실행 하면 부팅시 포트 전달이 발생하는 것을 볼 수 있습니다. 개인적으로 내 Vagrant 상자에서 각각 고유 한 호스트 이름으로 실행되는 약 8 개의 가상 호스트가 있습니다. 이 호스트 이름이 Vagrant 상자의 IP를 가리 키도록 호스트 (위의 컴퓨터 'B')에서 호스트 파일을 편집했습니다. 그것은 훌륭하게 작동 하고 주소 표시 줄에 mysite.dev 와 같은 것을 넣을 수 있으며 그 사이트는 내 로컬 컴퓨터에 표시됩니다.
이제 호스트 시스템과 동일한 서브넷 내에서 다른 시스템에서이 작업을 수행하려면 해당 두 번째 시스템에서 호스트 파일을 편집해야합니다. 호스트 이름 (예 : mysite.dev )을 호스트 시스템의 실제 IP 주소로 지정합니다. 그러면 mysite.dev의 모든 인스턴스가 질문에서 'B'로 표시된 시스템 으로 전달 됩니다. 유일한 문제는 이것이 일반적인 웹 페이지와 마찬가지로 표준 포트 80을 가리키는 것 입니다. 이 트래픽이 실제로 질문에서 머신 'A'에 도달하기를 원합니다. 따라서 브라우저의 주소 표시 줄에 mysite.dev 를 넣는 대신 mysite.dev:8088 (또는 이전에 컴퓨터 'A'로 전달하도록 선택한 포트 번호)를 입력합니다.
이제 'C'의 트래픽은 호스트 파일이 거기로 이동하도록 지시하고 주소에 추가 한 추가 포트가 시스템 'B'가 해당 트래픽을 시스템 'A'의 포트 80 으로 전달하도록하기 때문에 'B'시스템으로 전송됩니다. . 머신 'A'는 요청을 수신하고 데이터를 머신 'B'로 반환 한 다음 머신 'C'로 다시 전달합니다.
최종 결과는 컴퓨터 'A'에서 반환 된 페이지를 보는 컴퓨터 'C'입니다.
그것이 모두 요약되기를 바랍니다.
행운을 빕니다!
c0p
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다