Django middleware to handle routing for subdomains.
Project description
Djano Subdomain Middleware
The Django subdomain middleware provides the ability to configure different url configurations for each subdomain.
How To Install
This package can be installed using Pip. Prior to doing so however you should identify the version that you require.
The versioning of this package matches the versioning of Django. Therefore, if you are using Django 4.2 you should use version 4.2 of this package.
Once you have identified the version you can simply do something along the lines of:
pip install django_subdomain_middleware>=4.2,<5
How To Use
To use this package simple do the following:
Add django_subdomain_middleware To The Middleware
Within settings.py there will be a list assigned to the MIDDLEWARE constant. Add the following to it after common:
"django_subdomain_middleware.subdomain.Subdomain",
so that it looks like:
MIDDLEWARE = [
"django.middleware.security.SecurityMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
"django.middleware.common.CommonMiddleware",
"django_subdomain_middleware.subdomain.Subdomain",
"django.middleware.csrf.CsrfViewMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
"django.contrib.messages.middleware.MessageMiddleware",
"django.middleware.clickjacking.XFrameOptionsMiddleware",
]
Doing this will provide a subdomain entry in any request object.
Add Subdomain Routing
If you would like to route based on the subdomain then the following should also be carried out:
SUBDOMAIN_URL_CONF = {
'test': "project_name.testurls",
'*': "project_name.wildcardurls",
}
In the above example test.domain.com would use the url configuration called testurls in project_name, * acts as a wildcard, therefore, any other subdomain will be routed towards the url configuration called wildcardurls.
In the event that either of the following occurs the standard default url configuration will be used:
- A subdomain is visited but no configuration or wildcard exists.
- A visitor goes directly to the allowed hosts domain.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file Django Subdomain Middleware-4.2.0.tar.gz
.
File metadata
- Download URL: Django Subdomain Middleware-4.2.0.tar.gz
- Upload date:
- Size: 3.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 61478ef0c78e3afb8d7500eebd11a9e14100fece27de3d0a33e03431928f7481 |
|
MD5 | a352ecc036e47fa4d2b2b2e699a55b87 |
|
BLAKE2b-256 | 16cc711887bf9cbbefbf89cfe45661cab062e40985fd38a4850449480934035a |
Provenance
File details
Details for the file Django_Subdomain_Middleware-4.2.0-py3-none-any.whl
.
File metadata
- Download URL: Django_Subdomain_Middleware-4.2.0-py3-none-any.whl
- Upload date:
- Size: 4.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a507f4758981158f1cbbe1c019151926b9d8b424920739145c533cab8bea6942 |
|
MD5 | 402425405c37df9c496e168cc7c52db1 |
|
BLAKE2b-256 | 2052abb25fa3145aafc506b881178b12c2be0e32477e80a4b3303cca18cf8c90 |