Django子域意外行为

时间:2016-07-10 11:22:04

标签: django nginx subdomain django-subdomains

我的两个子域名无法正确路由。

这是我的中间件类

MIDDLEWARE_CLASSES = [
    'subdomains.middleware.SubdomainURLRoutingMiddleware',
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',

正如您所见,SubdomainURL Routing中间件高于Common。

配置如下:

ROOT_URLCONF = 'deltaforce.urls'

SUBDOMAIN_URLCONFS = {
    'api': 'errorPage.urls',
    None: 'interface.urls',
}

问题是abc.com和api.abc.com都路由到无/ interface.urls

我从每个404页面上了解到同样的情况。 deltaforce.urlsinterface.urls之间的差异是默认的管理控制台,它没有显示,这是一个很好的信号,它没有使用ROOT_URLCONF,但api也显示类似作为错误页面中唯一页面的行为是404,我用它来测试它。它的404页面显示了界面中的网址列表。

以下是其他可能很重要的内容:

ALLOWED_HOSTS = [".abc.com"]

abc.com和其他子域有一个/etc/hosts文件,最后这是一个nginx代理,它根据404页面上请求的URL正确传递主机头。

0 个答案:

没有答案