Apache2(XAMPP) 가상 호스트 지시문이 작동하지 않습니다(분명히)

Apache2(XAMPP) 가상 호스트 지시문이 작동하지 않습니다(분명히)

나는 가지고있다몇 가지IP 기반 가상 호스트를 설정할 때 문제가 발생합니다. 우선 저는 Windows 7에서 apachefriends(Apache 2.2.21이 포함된 XAMPP 1.7.7)의 현재 XAMPP를 사용하고 있습니다.

"기본" 서버( 의 httpd.conf)에 대한 기본 기능은 완벽하게 작동합니다. 하지만 이제는 192.168.2.95 에서 192.168.2.105 까지의 모든 IP 주소를 사용하도록 네트워크 카드를 구성했기 때문에 서로 다른 IP 주소를 가진 여러 가상 호스트를 설정하고 싶습니다.

가상 호스트 항목은 다음과 같습니다.

<VirtualHost 192.168.2.96:80>
    DocumentRoot "/xampp/hegedocs/www"
    ServerName 192.168.2.96:80
</VirtualHost>

httpd -D DUMP_VHOSTS이렇게 말합니다:

PS G:\xampp\apache\bin> ./httpd -D DUMP_VHOSTS
VirtualHost configuration:
192.168.2.96:80        192.168.2.96 (G:/xampp/apache/conf/extra/httpd-vhosts.conf:45)
Syntax OK

하지만 가상 호스트에 액세스할 수 없습니다. 아파치가 192.168.2.96:80을 수신하는 것 같지도 않습니다. 이 주소에 netstat -a -b.

답변1

문제를 발견했습니다. IP 기반 가상 호스트가 작동하지 않습니다. 호스트 파일(foo.localhost, bar.localhost 모두 동일한 IP 주소에 매핑)에 몇 가지 이름을 정의한 다음 이름 기반 가상 호스트를 사용하면 문제 없이 작동합니다. 물론 이것은 네트워크의 다른 컴퓨터가 당연히 이러한 이름을 모르기 때문에 IP 주소만큼 이식성이 높지는 않습니다. 하지만 어떻게든 작동하는 한...

답변2

이 가이드를 확인해 보세요.

http://i.justrealized.com/2008/how-to-set-up-virtualhost-in-xampp-for-windows/

그것은 나를 위해 일하고 있습니다

답변3

올바른 포트를 얻고 있는지 확인하기 위해 추가해 볼 수 있는 몇 가지 기본 사항은 다음과 같습니다.

# Ensure that Apache listens on port 80
Listen 80

# Listen for virtual host requests on all IP addresses
NameVirtualHost *:80

다음은 Appache의 모습에 대한 예입니다.

<VirtualHost *:80>
DocumentRoot /www/example1
ServerName www.example1.com

# Other directives here

</VirtualHost>

<VirtualHost *:80>
DocumentRoot /www/example2
ServerName www.example2.org

# Other directives here

</VirtualHost>

나는 당신이 이것을 이전에 보았을 것이라고 확신하지만 때로는 간단한 것들을 되돌아 보는 것이 도움이 될 수 있습니다.

내 설정은 ServerName www.example.com을 사용하여 하나의 상자에서 2개의 웹사이트를 실행하는 데 문제가 없습니다.

도움이 되었기를 바랍니다!

답변4

Apache가 vhost.conf 파일의 위치를 ​​알고 있는지 확인하십시오. httpd.conf 하단에서 주석 처리를 제거해야 할 수도 있습니다.

Include conf/*.conf

관련 정보