2017-11-05 4 views
0

Wagtail을 사용하여 다중 사이트 환경을 설정하고 있습니다. (아마도 Wagtail, Django 및 Python을 처음 접했을 때 조금 야심 찬 것 같습니다. 몇 가지 간단한 사이트를 Wagtail로 마이그레이션하고 처음부터 올바른 설정을 원했습니다. Wagtail 관리자의 사이트 목록과 각 사이트의 홈 페이지를 만들었습니다. 여러 URL (name.com + name.othername.com)을 통해 사이트 중 일부에 연결할 수 있기를 바랍니다. 각 URL에 대해 새 사이트 설정 (관리자의 "사이트 추가"를 통해)을 작성해야합니까, 아니면 더 나은/다른 방법으로 처리해야합니까?다중 사이트 Wagtail 환경에서 동일한 사이트에 대해 여러 URL을 사용하는 방법

답변

0

여러 도메인으로 작업하려면 외부 웹 서버 (예 : Apache)를 사용하는 것이 좋습니다. wagtail 앱을 가리 키도록 가상 호스트 프록시를 정의하십시오. 여기

은 예입니다

<VirtualHost *:80> 
    ServerName example1.com 
    ServerAlias www.example1.com 
    ServerAlias example2.com 

    # Here we define the proxy to your wagtail app 
    ProxyPass/http://localhost:8000/ 
    # Reverse Proxy for load balancing 
    ProxyPassReverse/http://localhost:8000/ 
    # Preserves the host if you use docker 
    ProxyPreserveHost On 
</VirtualHost> 

당신은 비 디버그 모드에서 정적 콘텐츠를 제공 어쨌든 외부 웹 서버가 필요합니다.

+0

NGINX를 사용하고 NGINX 설정에서 다른 URL의 적용 범위를 조정했지만 Wagtail이 URL을 이해해서는 안됩니까? 그리고 나는 다중 사이트 설정에서 Wagtail에게 다른 URL의 홈페이지가 무엇인지 알려줄 필요가 있음을 이해했습니다. – Marco

+0

모든 페이지가 동일한 웹 사이트 진입 점을 가지고 있다면, 하나의 wagtail 사이트와이를 가리키는 여러 개의 nginx 프록시를 정의하는 것으로 충분합니다. Wagtail은 가상 호스트의 호스트 이름에 대해 신경 쓰지 않습니다. 다른 페이지에 대해 서로 다른 진입 점을 사용하려는 경우 여러 wagtail 사이트를 만드십시오. 호스트 이름과 포트는 가상 호스트 구성과 일치해야합니다. 각 wagtail 사이트마다 하나씩 여러 개의 프록시를 정의 할 수 있습니다. 그런 다음 각 포트에 대해 별도의 wagtail 인스턴스를 실행하십시오.'./manage.py runserver ' 도움이되기를 바랍니다. –

+1

응답 주셔서 감사합니다. Tobias! 하지만 ... 다중 사이트 설정을 사용하고 있습니다. https://wagtail.io/blog/multi-site-wagtail에 설명 된 것처럼 다소 차이가 있습니다. 그래서 나는 사이트 메뉴의 다른 사이트에 대한 URL과 엔트리 포인트 (사용할 페이지)를 정의하고 루트 레벨 아래에 그 (엔트리 포인트) 페이지를 정의했습니다. 여태까지는 그런대로 잘됐다. 사이트 메뉴에서도 대안/별칭 URL (예 : a.com에 대한 대체/별칭)을 정의해야한다고 가정합니다. 맞습니까? – Marco