settings.py 配置汇总

2022-12-07,,,

数据库配置:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 数据库引擎
'NAME': ' ', #数据库名称
'HOST': ' ', #连接地址
'USER': 'root', #连接用户
'PASSWORD': ' ', #密码
'POST': '3306' #端口 }
}
PS :如果数据库包用的是 pysqmyl
需要在项目init文件下 配置
import pymysql
pymysql.install_as_MySQLdb() 请求头配置
1.服务器请求头配置
ALLOWED_HOSTS = ['网站域名'] 或者 = ['服务器监听的IP地址'] 2.局域网访问请求头配置
-如果要在局域网其他主机也能访问此主机的Django服务
-python3 manage.py runserver 0.0.0.0:指定端口. / 0代表所有
-ALLOWED_HOSTS= ['内网ip'] # 可以是列表形式,填入多个请求头
-ALLOWED_HOSTS= ['*'] #表示任何请求头都能访问到当前项目
-访问方式:内网ip:指定端口 语言配置:
LANGUAGE_CODE = 'zh-Hans' #中文 时区配置:
TIME_ZONE = 'Asia/Shanghai' #东八时区 新app注册:
INSTALLED_APPS = ['app_name'] #插入app名 缓存:
# 缓存
# 缓存配置的数据库表需要用python命令创建出来:python3 manage.py createcachetable
# 1.CACHES配置 2.命令创建LOCATION对应的数据表
# CACHES = {
# 默认配置数据库缓存
'default': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache', # 数据库引擎
'LOCATION': 'my_cache_table', # 缓存数据库表名
'TIMEOUT': 300, # 缓存保存时间 单位秒,默认值300
'OPTIONS': {
'MAX_ENTRIES': 300, # 缓存最大数据条数
'CULL_FREQUENCY': 2, # 缓存条数达到最大值时,删除1/x的缓存数据
},
# 本地缓存
'local': {
'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'LOCATION': 'unique-snowflask'
},
# 将缓存数据存在到本地文件夹
'file': {
'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache',
'LOCATION': 'var/tmp/django_cache' #文件夹的路径 }
}
} Session配置:
INSTALLED_APPS: django.contrib.session
MIDDLEWARE:django.contrib.sessions.middleware.SessionMiddleware
PS:以上两项配置默认存在
#手动配置项 可选
SESSION_COOKIE_AGE:指定sessionID在cookies中保存的时长(默认两周),例如:SESSION_COOKIE_AGE = 60*60*24*7*2
SESSION_EXPIRE_BROWSER_CLOSE:浏览器关闭时,session是否失效 默认为False,设置为True浏览器关闭session会失效
PS:Django中的session数据存储在数据库中,所以使用session前确定已执行过migrate 中间件注册:
# settings.py 中需要注册一下自定义的中间件
# 配置为数组,中间件被调用时先以先上到下,再由下到上的顺序调用
# 在项目路径下创建middleware(自定义名称)中间件文件夹
MIDDLEWARE = [
'middleware.py_name.calss_name', ##中间件文件夹/py文件/中间件类
] 内建用户系统登录失败跳转配置
LOGIN_URL = '登录失败跳转的地址' 指定内建用户系统user表对应的模型类
AUTH_USER_MODEL = '应用名.类名'
#此操作要在第一次Migrate前进行 文件上传/media资源配置
MEDIA_URL = '/media/' # 路由标识
MEDIA_ROOT = os.path.join(BASE_DIR,'media') #文件夹路径 # 主路由绑定media配置
from django.conf import settings
from django.conf.urls.static import static urlpatterns = [
path('admin/', admin.site.urls),
] urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 邮件相关配置: #邮件基础配置
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' # Django邮件引擎
EMAIL_HOST = 'smtp.xx.com' # 对应邮箱SMTP服务器地址,例如smtp.qq.com / smtp.163.com等
EMAIL_PORT = 25 # SMTP服务端口号
EMAIL_HOST_USER = 'xxxx@xx.com' # 发送邮件等邮箱,例如 test@163.com
EMAIL_HOST_PASSWORD = '******' # 对应邮箱设置里面获得的授权码,而不是邮箱的登录密码
EMAIL_USE_TLS = False # 与SMTP服务器通信时,是否启动TLS链接(安全链接),默认False #可追溯报错信息配置
#关闭调试模式
DEBUG = False #错误报告接收方
ADMINS = [('username','email@qq.com'),('username','email@qq.com')] #接收人名字/邮件地址 #发送错误报告方,默认为root@localhost账户,多数邮件服务器会拒绝,需要修改成配置的邮箱
SERVER_EMAIL = 'email配置中的邮箱' Django-uwsgi配置
添加配置文件 项目同名文件夹下/uwsgi.ini #文件名可自定义
整个文件以[uwsgi]开头,ini文件中注释是以及;开头
;uwsgi.init 配置
;ini文件中注释是以;开头 [uwsgi] http = 地址:端口 socket = 地址:端口[此方式需要有nginx] ;使用socket方式的话 需要将http方式禁掉,二选一 chdir= 绝对路径项目地址 wsgi-file = wsgi.py文件路径,相对路径, 项目同名文件夹/wsgi.py process = 进程个数 threads = 每个进程的线程个数 pidfile = uwsgi.pid - 服务的pid记录文件 daemonize = uwsgi.log - 服务的日志文件位置 master = True - 开启主进程管理模式 #settings.py配置 1.修改settings.py将DEBUG=True 改为DEBUG = False
2.修改settings.py 将ALLOWED_HOSTS改为 = ['网站域名'] 或者 = ['服务器监听的IP地址'] 静态文件配置 STATIC_URL = '/static/'
指定访问静态文件时时需要通过/static/xxx 或者 http://127.0.0.1:8000/static/xxx
xxx表示具体的静态资源位置 # 测试环境静态文件配置
STATICFILES_DIRS = os.path.join(BASE_DIR,'static')
STATICFILES_DIRS保存的是静态文件在服务器端存储的位置
如果配置项的值是元组,括号结尾一定要加逗号
在项目下创建static静态文件夹,配置中使用op.path.join拼接项目路径与静态文件夹路径,静态配置文件/夹名字可以自定义 # 正式环境静态文件配置
创建新路径-主要存放Django所有静态文件 如/home/项目名_static/ STATIC_ROOT = '/home/项目名_static/static'
# 进入项目后执行 python3 manage.py collectstatic
# 执行该命令后,Django将所有的文件复制到STATIC_ROOT中,包括Django内建的静态文件

settings.py 配置汇总的相关教程结束。

《settings.py 配置汇总.doc》

下载本文的Word格式文档,以方便收藏与打印。