_default_ 포트 80에서 VirtualHost가 겹칩니다.


10

아래와 같이 apache2 conf 파일에 2 개의 가상 호스트를 추가했습니다.

<VirtualHost *:80>
    DocumentRoot /var/www/html/site1
    ServerName www.site1.com
    ServerAlias site1.com
</VirtualHost>


<VirtualHost *:80>
    DocumentRoot /var/www/html/site2
    ServerName www.site2.com
    ServerAlias site2.com
</VirtualHost>

그런 다음 아파치를 다시 시작한 후 오류가 발생했습니다.

[경고] 기본 VirtualHost가 포트 80에서 겹치며 첫 번째가 우선 함

구글을 검색하고 그들은 아래 줄의 주석을 해제했다.

NameVirtualHost *:80

다시 시작하면 오류가 발생하지 않지만 두 사이트 모두 첫 번째 사이트로 이동합니다.

Centos5를 실행 중입니다. 이 문제를 어떻게 해결합니까?

답변:


13

NameVirtualHost는 주석 처리를 제거해야합니다. 이는 서버에 도달하는 데 사용 된 Doman 이름을 기반으로 서버에 다른 가상 호스트를 알려줍니다. 따라서 모든 요청이 제거 될 때 모든 요청이 첫 번째 사이트로 이동하는 것을 볼 수 있습니다.


1
그래, 나는 그것을했고 여전히 작동하지 않습니다.
David

site2.com을 제대로 제공하지 않습니까? 실제로 첫 번째 VirtualHost가 일치하지 않는 이름의 기본 사이트임을 경고하는 것처럼 보입니다. 본질적으로 가상 호스트의 작동 방식입니다.
Christopher Karel

1
해당 줄의 주석 처리를 제거한 후에도 경고 메시지가 표시되지 않고 두 사이트 모두 여전히 사이트 1로 이동합니다
David

브라우저가 site2의 도메인 아래 site1의 컨텐츠를 캐시했을 가능성이 있습니까? 캐시를 지우거나 새로 고침을 시도하십시오. (ctrl + F5)
Christopher Karel

1

이미 CWP 로이 문제를 해결했습니다.

/usr/local/apache/conf/sharedip.conf로 이동하십시오.

이 IP 서버에 넣어 * 확인

NameVirtualHost *:80
<VirtualHost *:80>
    ServerName yourdomainserver.ltd
    DocumentRoot /usr/local/apache/htdocs
    ServerAdmin root@youremail.com
    <IfModule mod_suphp.c>
        suPHP_UserGroup nobody nobody
    </IfModule>
</VirtualHost>
<Directory "/">
        AllowOverride All
        Allow from all
        Order Deny,Allow
</Directory>

그런 다음 /usr/local/apache/conf.d/vhost.conf로 이동하여 각 가상 호스트가 다음과 같은지 확인하십시오.

# vhost_start chango.com.ve
<VirtualHost *:80>
ServerName yourdomain.ltd
ServerAlias www.yourdomain.ltd
ServerAdmin youremail@yourdomain.ltd
DocumentRoot "/home/yourdomain/public_html"
ScriptAlias /cgi-bin/ "/home/yourdomain/public_html/cgi-bin/
# 
# Custom settings are loaded below this line (if any exist)
# Include "/usr/local/apache/conf/userdata/yourdomain/yourdomain.ltd/*.conf    
</VirtualHost>^M
# vhost_end yourdomain.ltd

이것은 나를 위해 작동합니다!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.