문제

개발 환경과 프로덕션 환경 모두에서 완전한 기능을 갖춘 Django 애플리케이션이 있습니다.이것은 단지 변경만으로 처리됩니다. ALLOWED_HOSTS 적절하게 (당신이 원하지 않는다고 가정 DEBUG) 각 위치를 올바르게 제공하도록 Apache를 설정합니다.내 문제는 내가 Django 리디렉션 앱 앞으로는 리디렉션을 처리하기 위해(이 프로젝트의 일부는 PHP에서 전환하는 것임) 더 이상 Apache에서 이러한 리디렉션을 처리할 필요가 없기 때문입니다.리디렉션은 더 큰 문제이며 Apache는 index.php 리디렉션 루프에 문제를 일으킵니다.또한 이를 통해 관리 용이성을 위한 목표인 Django에서 더 많은 웹사이트 제어를 전환할 수 있습니다.내가 겪고 있는 문제는 리디렉션 앱이 SITE_ID 유효한 대상/리디렉션을 결정합니다.프로덕션 서버의 호스트 이름이 개발 서버와 다르기 때문에 리디렉션 앱을 테스트하거나 확인할 수 없습니다.이는 실제로 실행되기 전에 모든 기능을 테스트하는 격리된 거의 동일한 개발 서버의 목적에 분명히 해를 끼칩니다.나는 그 말부터 이해한다. 사이트 프레임워크 개별 사이트에는 개별 settings.py 파일과 데몬이 공존해야 하지만 개발 사이트가 프로덕션 사이트와 지리적으로 분리되어 있기 때문에 이는 내 시나리오에 도움이 되지 않습니다.문서에서는 명확하지 않습니다.

1) 사이트 추가/변경 외 사이트 추가 방법 SITE_ID - 관련 이름은 어디서 선택하나요?

2) 1을 가정하면 이미 다른 settings.py 파일이 있으므로 이것이 가장 좋은 방법이며 적절합니까?

3) 동일한 항목에 대해 두 개의 사이트 항목이 어떻게 생겼습니까? foo.com 이것이 내 리디렉션에 어떤 영향을 미치나요?나는 (각 서버에) wsgi와 settings.py가 하나만 있지만

+----+-------------+-------------+
| id | domain      | name        |
+----+-------------+-------------+
|  1 | example.com | example.com |
|  2 | foo.net     | foo.net     |
|  3 | foo.net     | foo         |
+----+-------------+-------------+

내 데이터베이스에?이러한 사이트가 어디에 추가되거나 구성되어 있는지 알 수 없으므로 리디렉션 앱에 맞게 내 사이트 프레임워크를 조정하는 방법에 대해 혼란스러워집니다.나는 Django 1.5.4를 사용하고 있기 때문에 사이트 프레임워크가 기본적으로 활성화되어 있으므로 이전에는 생각해 본 적이 없습니다.

도움이 되었습니까?

해결책

리디렉션은 ID만 사용하므로 관련 사이트의 이름은 중요하지 않습니다. 따라서 실제 도메인 이름에 ID 1만 남기고 모든 중복 사이트를 삭제했습니다. SITE_ID = 1 프로덕션 및 테스트 구성 모두에서.다른 사이트는 어디에서 왔는지 모르겠습니다. SITE_ID 리디렉션을 설정했지만 지금은 작동합니다.

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