Skip to main content

Django application, set urls per domain.

Project description

Django application, implement multi domain concept. You can choose your url config according to your domain host.

Installation

You can install the most recent Django Multi Domain version using pip:

pip install django-multidomain

Setup

NOTE: The following settings should be added to the project file ‘settings.py’.

  1. Add ‘multidomain’ to ‘’INSTALLED_APPS’‘:

    INSTALLED_APPS += ( 'multidomain', )
    
  2. Add ‘multidomain.middleware.DomainMiddleware’ to ‘’MIDDLEWARE_CLASSES’‘:

    MIDDLEWARE_CLASSES += ( 'multidomain.middleware.DomainMiddleware', )
    
  3. Create a file for each domain you have (For example: ‘domain-one.dev’ and ‘domain-two.dev’):

    * urls.py   (by default)
        from django.conf.urls import patterns, include, url
        from django.contrib import admin
        urlpatterns = patterns('',
            url(r'^admin/', include(admin.site.urls)),
        )
    
    * urls-one.py
        from django.conf.urls import patterns, include, url
        import one.urls
        urlpatterns = patterns(
            '',
            url(r'^', include(one.urls, namespace='one')),
        )
    
    * urls-two.py
        from django.conf.urls import patterns, include, url
        import two.urls
        urlpatterns = patterns(
            '',
            url(r'^', include(two.urls, namespace='one')),
        )
    
  4. Declare host/domain urlconfig tuple ‘’URL_CONFIG’‘:

    URL_CONFIG = (
        (r'^(.+\.)?domain-one\.dev', 'urls-one'),
        (r'^(.+\.)?domain-two\.dev', 'urls-two'),
    )
    
    ROOT_URLCONF = 'urls'
    

Usage

It should create the following structure:

project_django/
| -- __init__.py
| -- settings.py
| -- wsgi.py
| -- urls-one.py
| -- urls-two.py
| -- urls.py        (default/optional)

NOTE: We use ‘’django-theming’’ library to manage multiple teming. (https://github.com/achavezu89/django-theming)

Contributing

Development of django-multidomain happens at github: https://github.com/cyacarinic/django-multidomain

Credits

Project details


Release history Release notifications

This version
History Node

1.1.4

History Node

1.1.3

History Node

1.1.2

History Node

1.1.1

History Node

1.1

History Node

1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
django-multidomain-1.1.4.tar.gz (2.5 kB) Copy SHA256 hash SHA256 Source None May 30, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page