ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

settings.py 配置汇总

2022-01-12 13:02:01  阅读:96  来源: 互联网

标签:文件 配置 settings py 汇总 django 缓存 static


数据库配置:
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,汇总,django,缓存,static
来源: https://www.cnblogs.com/Mickey-7/p/15792137.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有