Wagtail 中的通配符子域
wildcard subdomains in Wagtail
如何在 Wagtail 中创建子域?
我正在查看 https://github.com/tkaemming/django-subdomains,但这使用了 Django Site 框架。
我试过更换
from django.contrib.sites.models import Site
和
from wagtail.wagtailcore.models import Site
然而鹡鸰没有属性'get_current'
我能做什么?这里有解决办法吗?
对于通配符子域,您必须配置 Web 服务器(nginx、apache 等)。对于 NGINX,您必须添加
server {
....
server_name *.mydomain.com;
....
}
对于 Apache
ServerAlias *.example.com
在你的你的-site.com.conf文件中。
我找到了答案,我使用 django 1.11 和 wagtail 1.10
和 django-subdomain 2.1.0
目前 django-subdomain 不支持 django 1.10>= 所以我们需要
更新中间件以与 Django 1.10 兼容
我只是改变
class SubdomainMiddleware(MiddlewareMixin):
在 middleware.py 到
try:
from django.utils.deprecation import MiddlewareMixin
except ImportError:
MiddlewareMixin = object
class SubdomainMiddleware(MiddlewareMixin):
django-subdomain 使用 django-site 但 wagtail 使用 wagtail-site
所以我更改 utils.py 文件
来自
def current_site_domain():
from django.contrib.sites.models import Site
domain = Site.objects.get_current().domain
到
def current_site_domain():
try :
from wagtail.wagtailcore.models import Site
domain = Site.objects.get(is_default_site=True).hostname
except:
domain = "127.0.0.1"
您可以通过多种方式获取网站域名
现在 django-subdomain 与 wagtail 一起工作
只需使用 http://django-subdomains.readthedocs.io/en/latest/ 进行配置
对不起我的英语很烂
如何在 Wagtail 中创建子域?
我正在查看 https://github.com/tkaemming/django-subdomains,但这使用了 Django Site 框架。
我试过更换
from django.contrib.sites.models import Site
和
from wagtail.wagtailcore.models import Site
然而鹡鸰没有属性'get_current'
我能做什么?这里有解决办法吗?
对于通配符子域,您必须配置 Web 服务器(nginx、apache 等)。对于 NGINX,您必须添加
server {
....
server_name *.mydomain.com;
....
}
对于 Apache
ServerAlias *.example.com
在你的你的-site.com.conf文件中。
我找到了答案,我使用 django 1.11 和 wagtail 1.10
和 django-subdomain 2.1.0
目前 django-subdomain 不支持 django 1.10>= 所以我们需要 更新中间件以与 Django 1.10 兼容
我只是改变
class SubdomainMiddleware(MiddlewareMixin):
在 middleware.py 到
try:
from django.utils.deprecation import MiddlewareMixin
except ImportError:
MiddlewareMixin = object
class SubdomainMiddleware(MiddlewareMixin):
django-subdomain 使用 django-site 但 wagtail 使用 wagtail-site 所以我更改 utils.py 文件
来自
def current_site_domain():
from django.contrib.sites.models import Site
domain = Site.objects.get_current().domain
到
def current_site_domain():
try :
from wagtail.wagtailcore.models import Site
domain = Site.objects.get(is_default_site=True).hostname
except:
domain = "127.0.0.1"
您可以通过多种方式获取网站域名
现在 django-subdomain 与 wagtail 一起工作 只需使用 http://django-subdomains.readthedocs.io/en/latest/ 进行配置
对不起我的英语很烂