로컬 호스트가 "작동합니다"라고 말하는 이유는 무엇입니까?

로컬 호스트가 "작동합니다"라고 말하는 이유는 무엇입니까?

내 브라우저에서 테스트할 수 있도록 "사이트" 폴더에 있는 모든 웹사이트를 구성했습니다. 예를 들어 웹 주소를 입력할 때http://test.dev, "It Works"라는 메시지가 표시됩니다.

왜?

답변1

이것이 기본 Apache HTTP 인덱스 페이지입니다. 이는 httpd를 올바르게 설치하고 활성화했음을 나타냅니다.

답변2

해당 페이지는 에 있습니다 /Library/Webserver/Documents.

다음의 두 번째 줄의 주석 처리를 제거해야 합니다.

# User home directories
Include /private/etc/apache2/extra/httpd-userdir.conf

그러면 해당 파일에는 다음의 파일이 포함됩니다./private/etc/apache2/users

귀하의 사용자 이름이 포함된 이름이 하나 있어야 합니다.

그런 다음 으로 이동할 수 있습니다 localhost/~username. 이는 방문과 동일합니다.Users/username/Sites

답변3

이는 아마도 웹 서버 구성에 IP 주소(IP 기반 가상 호스팅을 사용하는 경우) 또는 도달하려는 이름(예: test.dev, 사용하는 경우)에 대한 특정 항목이 없다는 의미일 수 있습니다. 이름 기반 가상 호스팅).

예를 들어, Apache에서는 <VirtualHost>IP 및/또는 이름과 일치하는 요청에 대한 문서 루트를 지정하는 섹션을 만들 수 있습니다(역시 IP 또는 이름 기반 가상을 수행하는지 여부에 따라 다름). 일치하는 항목이 없으면 설정된 DocumentRoot 및 기타 설정으로 대체됩니다.밖의항목 의 <VirtualHost>.

따라서 이 문제를 해결하려면 이러한 요청을 수신하려는 사이트에 대한 가상 호스트 구성에 현재 일치하지 않는 이 이름/IP를 포함하도록 만들거나(바람직함) 사이트 중 하나를 기본 구성에 존재하도록 만들 수 있습니다. <VirtualHost>(또는 사용 중인 웹 서버에 따라 유사) 섹션 에 있습니다 .

답변4

(mac)을 사용 apachectl -S하면 로드된 구성을 나열하고 로드된 모든 가상 호스트를 볼 수 있습니다. 아마도 프로젝트 .conf파일이 해당 목록에 없을 수도 있습니다.

관련 정보