운영 체제: CentOS 6.9. HTTPD 버전 2.2
나는 그 중 하나에 두 개의 IP 주소와 12개의 가상 호스트를 가지고 있습니다. 나에게 필요한 것은 방문자가 브라우저에서 IP 주소만 열 때 기본적으로 표시되는 가상 호스트를 전환할 수 있는 것입니다.
현재 이를 달성하기 위해 제가 아는 유일한 방법은 가상 시스템을 교체하는 것입니다. 첫 번째 시스템은 기본적으로 작동합니다. 더 나은 솔루션을 찾고 있습니다. 그것을 가지고? httpd.conf를 수동으로 편집하는 대신 스크립트를 사용하여 기본 가상 호스트를 전환할 수 있도록 일종의 지시문이 필요합니다.
오전 내내 구글링을 했는데요. 다음 정보를 찾았습니다.
설정 ServerAlias my.2nd.ip.addr
- 나에게는 작동하지 않습니다.
VirtualHost _default_:80
VirtualHost 대신 설정 my.2nd.ip.addr:80
- 원하는 효과가 없습니다.
ServerName my.2nd.ip.addr
도메인을 다음과 같이 설정하고 추가했습니다 ServerAlias
. 아직 아무것도 아닙니다.
어떤 도움이라도 대단히 감사하겠습니다.
답변1
힌트를 주었듯이, IP 주소를 통해 액세스할 때 "첫 번째 가상 호스트"가 기본적으로 켜져 있습니다.
까다로운 부분은 Apache가 실제로 활성/활성화된 가상 호스트를 주문하는 방법을 이해하는 것입니다.파일 이름, 해당 IP 주소를 사용하는 가상 호스트에 해당하는 하위/첫 번째 파일 이름이 오름차순으로 승리하고 "first"로 선택됩니다.
따라서 가상 호스트 이름에 관계없이 첫 번째 IP 주소(예: 두 번째 IP 주소)에 대한 파일 이름을 지정하면 0.conf
이러한 가상 호스트 파일은 검색을 위해 서버가 열릴 때 "승리"되고 기본 가상 호스트로 사용됩니다. IP 주소로.0actualvhostname.conf
1.conf
이것이 Debian에서 기본 Apache 가상 호스트 구성 파일의 이름이 000-default.conf
.
가상 호스트 파일 이름을 변경한 후 다음과 같이 Apache를 다시 시작해야 합니다.
sudo apache2ctl -k graceful