Django-hosts错误的URLS.py

时间:2016-07-27 14:08:11

标签: django subdomain django-urls

我正在尝试配置类似这样的内容

user2.example.com - >加载urls_user.py www.example.com - >加载urls.py

我现在面临的问题是通过urls_user.py加载所有内容

我正在使用https://django-hosts.readthedocs.io/en/latest/

中的django-hosts
settings.py


MIDDLEWARE_CLASSES = (
    'django_hosts.middleware.HostsRequestMiddleware' ,
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'django.middleware.security.SecurityMiddleware',
    'user_shop.subdomainMiddleware.subdomainMiddleware',
    'django_hosts.middleware.HostsResponseMiddleware'
)

ROOT_URLCONF = 'e_com.urls'
ROOT_HOSTCONF = 'e_com.hosts'
DEFAULT_HOST = "www"


hosts.py

from django.conf import settings
from django_hosts import patterns, host

host_patterns = patterns('',
    host(r'www', settings.ROOT_URLCONF, name='www'),
    host(r'127', settings.ROOT_URLCONF, name='127'),
    host(r'(?!www)\w+', 'e_com.urls_user', name='wildcard'),
)

即使我删除了与urls_user有关的所有内容,它仍会加载该文件。

我正在使用localhost并使用hexxie:8000来运行我的子域。

------ ------ EDIT

我在已安装的应用程序中有django_hosts,在我关闭服务器并重新启动它之前它已经工作了一次,从那时起问题一直持续到现在。

' user_shop.subdomainMiddleware.subdomainMiddleware'只是一个获取子域的脚本

class subdomainMiddleware:

def process_request(self,request):
    domain_parts = request.get_host().split('.')
    subdomain = "www"
    if(len(domain_parts) > 2):
        subdomain = domain_parts[0].lower()

    request.subdomain = subdomain

如果我做一个pip冻结,这将显示

  altgraph==0.10.2
bdist-mpkg==0.5.0
bonjour-py==0.3
Django==1.8.3
django-hosts==1.4
django-subdomains==2.0.4
macholib==1.5.1
matplotlib==1.3.1
modulegraph==0.10.4
mysql==0.0.1
MySQL-python==1.2.5
numpy==1.8.0rc1
Pillow==2.9.0
py2app==0.7.3
pyasn1==0.1.8
pycrypto==2.6.1
pyobjc-core==2.5.1
pyobjc-framework-Accounts==2.5.1
pyobjc-framework-AddressBook==2.5.1
pyobjc-framework-AppleScriptKit==2.5.1
pyobjc-framework-AppleScriptObjC==2.5.1
pyobjc-framework-Automator==2.5.1
pyobjc-framework-CFNetwork==2.5.1
pyobjc-framework-Cocoa==2.5.1
pyobjc-framework-Collaboration==2.5.1
pyobjc-framework-CoreData==2.5.1
pyobjc-framework-CoreLocation==2.5.1
pyobjc-framework-CoreText==2.5.1
pyobjc-framework-DictionaryServices==2.5.1
pyobjc-framework-EventKit==2.5.1
pyobjc-framework-ExceptionHandling==2.5.1
pyobjc-framework-FSEvents==2.5.1
pyobjc-framework-InputMethodKit==2.5.1
pyobjc-framework-InstallerPlugins==2.5.1
pyobjc-framework-InstantMessage==2.5.1
pyobjc-framework-LatentSemanticMapping==2.5.1
pyobjc-framework-LaunchServices==2.5.1
pyobjc-framework-Message==2.5.1
pyobjc-framework-OpenDirectory==2.5.1
pyobjc-framework-PreferencePanes==2.5.1
pyobjc-framework-PubSub==2.5.1
pyobjc-framework-QTKit==2.5.1
pyobjc-framework-Quartz==2.5.1
pyobjc-framework-ScreenSaver==2.5.1
pyobjc-framework-ScriptingBridge==2.5.1
pyobjc-framework-SearchKit==2.5.1
pyobjc-framework-ServiceManagement==2.5.1
pyobjc-framework-Social==2.5.1
pyobjc-framework-SyncServices==2.5.1
pyobjc-framework-SystemConfiguration==2.5.1
pyobjc-framework-WebKit==2.5.1
pyOpenSSL==0.13.1
pyparsing==2.0.1
python-dateutil==1.5
pytz==2013.7
scipy==0.13.0b1
six==1.4.1
Twisted==13.2.0
xattr==0.6.4
zope.interface==4.1.1

1 个答案:

答案 0 :(得分:0)

我发现了错误。这是我的urls.py文件中的错误。