Django 配置
路径
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
# __file__是当前文件的路径
# os.path.dirname() 是放回文件的上层目录,返回两次即表示项目所在位置
访问域名设置
ALLOWED_HOSTS = ['*.besttome.com','www.ziqiangxuetang.com']
ALLOWED_HOSTS 允许你设置哪些域名可以访问,即使在 Apache 或 Nginx 等中绑定了,这里不允许的话,也是不能访问的。
当 DEBUG=False 时,这个为必填项,如果不想输入,可以用 ALLOW_HOSTS = [‘*’] 来允许所有的。
静态文件目录
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR,'static')
static 是静态文件所有目录,比如 jquery.js, bootstrap.min.css 等文件。
一般来说我们只要把静态文件放在 APP 中的 static 目录下,部署时用 python manage.py collectstatic 就可以把静态文件收集到(复制到) STATIC_ROOT 目录,但是有时我们有一些共用的静态文件,这时候可以设置 STATICFILES_DIRS 另外弄一个文件夹,如下:
这设置了所有app都可以共享的文件
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "common_static"),
'/var/www/static/',
)
这样我们就可以把静态文件放在 common_static 和 /var/www/static/中了,Django也能找到它们。
- 有时候有一些模板不是属于app的,比如 baidutongji.html, share.html等,
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
os.path.join(BASE_DIR,'templates').replace('\\', '/'),
os.path.join(BASE_DIR,'templates2').replace('\\', '/'),
],
'APP_DIRS': True,
]
这样 就可以把模板文件放在 templates 和 templates2 文件夹中了。
- 部署时收集所有的静态文件到settings.py 中设置的 STATIC_ROOT 文件夹中
python manage.py collectstatic