1.BASE_DIR
一般是使用默认值
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
os.path.dirname(__file__)返回脚本的路径,需要注意:
1>必须是实际存在的.py文件,如果在命令行执行,则会引发异常NameError: name '__file__' is not defined
2>在运行的时候如果输入完整的执行的路径,则返回.py文件的全路径
如:Python c:/test/test.py
则返回路径 c:/test
如果是python test.py 则返回空
3>os.path.abspath返回的是.py文件的绝对路径
2.SECRET_KEY加密盐
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/2.0/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = 'l_)n=n8u0niz=&!u-o(^xnw72ooqj(mf!2+9=)#z$fl+2ct=u7'
该配置是diango的安全配置,防止攻击用的,该值是startProject时用系统的某个算法产生的.
3.部署配置
1>调试模式是否开启:DEBUG = True/False
DEBUG配置为True的时候会暴露出一些出错信息或者配置信息以方便调试.但是在上线的时候应该将其关掉,防止配置信息或者敏感出错信息泄露.
2>访问web服务器的ip配置:
ALLOWED_HOSTS 是为了限定请求中的host值,以防止黑客构造包来发送请求.只有在列表中的host才能访问.强烈建议不要使用*通配符去配置,另外当DEBUG设置为False的时候必须配置这个配置.否则会抛出异常.配置模板如下:
ALLOWED_HOSTS = [
'.example.com', # Allow domain and subdomains
'.example.com.', # Also allow FQDN and subdomains
]
部署的时候请修改DEBUG和ALLOWED_HOSTS的值,一般将其修改为FALSE和指定ip,例如['127.0.0.1']
4.app的安装配置,即INSTALLED_APPS设置
# Application definition
INSTALLED_APPS = [
'django.contrib.admin', #管理站点
'django.contrib.auth', #认证系统
'django.contrib.contenttypes', #用于内容类型的框架
'django.contrib.sessions', #会话框架,session数据可以在数据库中的diango_session表中查看.
'django.contrib.messages', #消息框架
'django.contrib.staticfiles', #管理静态文件的框架
'login', #自己的APP模块
]
5.diango的中间件配置
MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', ]
一般的diango配置如图,如果需要自己添加中间件配置的,也可以自己添加.所谓中间件就是从用户请求到用户请求结束期间所做的操作,即用户的请求会次从上到下依次执行MIDDLEWARE中的配置,然后服务器响应用户的时候会再次从下至上依次执行,和Java的Filter很相像:
6.ROOT_URLCONF
一个字符串,表示你的根URLconf的模块名.默认配置好的.
例如:
ROOT_URLCONF = 'DjangoDemo.urls'
网友评论