2017-03-20 1 views
0

우리는 SaaS 제품을 보유하고 있으며 고객을 위해 웹 사이트를 제공합니다. 고객은 자신의 도메인이 자신의 웹 사이트를 가리 키도록 요청할 수 있습니다. 현재 우리는 httpd.conf 파일을 사용하여 동일한 문서 디렉토리를 가리키는 VirtualHost 항목을 추가합니다. 그런 다음 데이터베이스는 URL을 일치시켜 웹 사이트를로드합니다. 우리는이 접근 방식에 몇 가지 문제점이 있다는 것을 깨달았습니다. 그리고 이것은 전혀 확장 할 수 없습니다.가상 호스트 또는 사용자 정의 conf 파일없이 도메인을 Apache 서버로 지정

httpd.conf 파일에 실수가있을 경우 전체 제품이 작동하지 않을 수 있습니다. 이것은 실제로 일어난 일입니다. 또한 WHM과 cPanel을 사용하므로 라이브 서버에서 mod를 추가하거나 조정할 때 전체 httpd.conf가 재 작성되어 기존 가상 호스트 항목을 파일로 대체/추가 할 수 있습니다.

이상하게도 QA 서버에 가상 호스트 항목을 추가 할 필요가 없으며 새 도메인이 지정되자 마자 웹 사이트가 데이터베이스에서 선택됩니다. 라이브 호스트에서만 가상 호스트 항목이 필요하다는 것을 알게되었습니다. 두 제품 모두 Apache 2.4 CentOS가 설치되어 있습니다. 이것의 뒤에 이유가 있습니까? 이것은 구성 변경과 관련이 있음을 확신합니다.

누군가가 우리의 라이브 서버 환경에서 동일한 것을 얻을 수있는 올바른 방향으로 나를 가리킬 수 있기를 바랍니다.

건배!

답변

1

Apache VirtualHosts에서는 다 기능성을 추가하지만 사용자는 강제로 만들지 않습니다.

아파치는 (Listen 지시문을 사용하여) 인터페이스를 수신하고 가상 호스트를 정의하지 않은 경우 요청을 받으면 기본 서버 구성이 모든 요청에 ​​응답합니다.

가상 호스트를 추가하는 순간 모든 요청에 ​​응답하는 데 사용되며 더 많은 가상 호스트를 추가하면 서버 호스트 이름이 검사되어 수신 호스트 헤더에 따라 요청을 전달할 위치를 결정합니다.

정말로 실제로 더 이상 그 무엇도 없습니다.

+0

수정하십시오. 기본 서버 구성은 어디에 있습니까? 요청이 가상 호스트와 일치하지 않으면 기본 구성이 요청에 응답합니까? 또는 어떤 일이 발생합니까? –

+0

'httpd -k start -f/path/to/conf'에서와 같이 서버를 시작할 때 아무 것도 지정하지 않으면 기본 설정은 컴파일시 기본값으로로드됩니다. 보통 httpd.conf라고합니다 또는 일부 배포판에서 apache2.conf. 가상 호스트를 추가하고 클라이언트에 요청 된 호스트와 일치하는 이름이 없으면 첫 번째 가상 호스트가 사용됩니다. –

+0

이것이 " # 언 바운드 IP 용 기본 가상 호스트"항목과 관련이 있다고 생각합니다. 이 세부 사항을 변경할 수 있습니까? –

관련 문제