문제

사용자가 내 사이트에 가입 할 때 하위 도메인을 설정하려면 어떻게해야합니다.

필요한 인프라는 무엇입니까? Linux 서버를 사용하고 있습니다.

도움이 되었습니까?

해결책

각 하위 도메인에 대해 DNS 설정에서 CNAME 항목/ 레코드를 만들 수 있습니다.

CNAME 레코드는 도메인 관리 설정에서 도메인의 하위 도메인을 제어 할 수있는 레코드입니다.

자동화합니다 등록과 함께 등록 할 때 각 사용자에 대해 실행되는 스크립트를 작성할 수 있습니다.

Apache의 단계별 프로세스는이 링크를 참조 할 수 있습니다.

아파치에서 하위 도메인을 설정하는 방법

(Linux를 언급 한 이후로 아파치 여야한다고 가정합니다. 그렇지 않으면 언급하십시오)

대체 솔루션

당신은 또한 참조 할 수 있습니다 Alnitak에 의해 제공되는 와일드 카드 솔루션, 같은 스레드에서. 나는 그의 것이 더 쉬운 방법이라고 생각합니다. :)

다른 팁

특정 DNS를 사용할 수 있습니다 (CNAME 또는 A/AAAA)) 알려진 각 하위 도메인에 대한 항목 또는 *.example.com을 수락하는 야생 카드 DNS 항목 :

$ORIGIN example.com
foo     IN A 12.34.6.78
bar     IN A 12.34.6.78

또는

$ORIGIN example.com
*       IN A 12.34.6.78

이 후자의 장점은 서비스가 실행되면 DNS 또는 Apache 구성을 변경할 필요가 없다는 것입니다. 단점은 그러한 모든 와일드 카드 조회가 (정의에 따라) 동일한 IP 주소를 반환해야한다는 것입니다.

Apache 구성은 최종 사용자 제어 및 보안에 대한 요구 사항에 따라 다릅니다. 사용자가 서버에서 CGI 스크립트를 실행할 수있는 권한이 있으면 안전하게 수행되도록 추가 설정이 필요합니다.

콘텐츠가 정적인지 동적인지 여부에 따라 구성에도 영향을 미칩니다.

  1. 사용 mod_vhost_alias 개별 가상 호스트를 서버의 개별 디렉토리에 매핑합니다.

  2. 만약 너라면 진짜 원하고 별도를 만듭니다 <VirtualHost> 알려진 각 사이트의 섹션이지만 새 사용자가 가입 할 때마다 Apache를 다시 시작해야합니다.

  3. 싱글을 사용하십시오 <VirtualHost> 그런 다음 요청 된 URL의 호스트 이름 부분을보십시오 ( $SERVER_NAME 환경 변수)는 출력을 렌더링하여 어떤 사용자의 컨텐츠를 표시할지 파악하는 스크립트에서.

인프라에는 DNS 서버에 액세스하여 와일드 카드 항목을 추가하고 Apache에서 규칙을 다시 작성하는 것이 포함됩니다.

이 답변을 시도하십시오.

또는이 링크 :

Linux 서버를 사용하는 경우 Apache를 웹 서버로 사용한다고 가정합니다.

가상 호스트뿐만 아니라 서브 도메인에 대한 적절한 DNS 라우팅을 설정해야합니다.

가상 호스트는 설정하기가 상당히 쉽지만 비행기에서 얼마나 쉬운 지 잘 모르겠습니다.

대부분의 경우 Apache 구성 파일을 편집하고 다음을 추가하는 것만 큼 쉽습니다.

Port 80
ServerName www.mydomain.com

NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot /www/user-bob
ServerName bob.mydomain.com
...
</VirtualHost>

<VirtualHost *:80>
DocumentRoot /www/user-sally
ServerName sally.mydomain.com
...
</VirtualHost> 

그만큼 VirtualHost documention 아마도 당신에게 약간의 용도가있을 것입니다.

Apache를 사용하면 단일 서버의 하위 도메인을 기반으로 한 수의 '사이트'를 지정할 수 있습니다. 적절한 DNS 와일드 카드와 함께 적절한 하위 도메인 정보가 포함 된 새 '사이트 정의'파일을 작성하면 원하는 작업을 수행합니다.

다시 말해, 프로세스는 다음과 같습니다.

  1. *.mysite.com이 적절한 서버로 안내하도록 와일드 카드를 설정하십시오.
  2. 새 사용자가 가입하면 적절한 Apache 사이트 정의 파일을 만듭니다. 올바른 하위 도메인 정보를 넣고 저장하는 기본 템플릿이있을 수 있습니다.
  3. Apache가 구성을 다시 읽게하십시오.
  4. 이익.

중요한 이는 구성 파일이 디렉토리에 포함 된 데비안 스타일의 Apache 구성을 기반으로하며 기본 구성은 해당 디렉토리의 모든 구성 파일을 읽습니다. 하위 도메인을 추가/제거하면 단일 파일을 편집하기보다는 파일 추가/제거를 의미하므로 프로세스가 훨씬 쉽게 자동화하기가 훨씬 쉬워지기 때문에 많은 것이 단순화됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top