Am trying to set up multiple website with same base. While browsing, came to know Django has Sites framework which I could use.
I didnt get how to set multiple settings.py file with site id. Any ideas anyone?
Thanks in advance :)
Am trying to set up multiple website with same base. While browsing, came to know Django has Sites framework which I could use.
I didnt get how to set multiple settings.py file with site id. Any ideas anyone?
Thanks in advance :)
you can have multiple setting file for example develop.py and production.py steps 1. create a settings folder inside the project 2. Add all of the settings file to that folder 3 while running server
./manage.py runserver --settings=project_name.settings.required_settingfile
eg: ./manage.py runserver --settings=myproject.settings.develop
To serve multiple sites from the same Django instance you do not need multilple settings.py files.
A simple method is to omit the SITE_ID
setting from the Sites framework. Then include the Sites framework middleware:
'django.contrib.sites.middleware.CurrentSiteMiddleware'
This automatically passes a request
object to Site.objects.get_current()
on every request. It also allows your Django application to detect the current site via request.site
.
You would need to make sure to setup multilple virtual hosts using your NGINX or apache instance to route traffic from each site to your server.