Django中的静态文件、路径、访问静态文件的方法

1.什么是静态文件

不能与服务器端做动态交互的文件都是静态文件

如:图片,css,js,音频,视频,html文件(部分)

2.静态文件配置

settings.py 中配置一下两项内容:

1.配置静态文件的访问路径

通过哪个url地址找静态文件

STATIC_URL = '/static/'

说明:

指定访问静态文件时是需要通过 /static/xxx或 127.0.0.1:8000/static/xxx

xxx 表示具体的静态资源位置

2.配置静态文件的存储路径 STATICFILES_DIRS

STATICFILES_DIRS保存的是静态文件在服务器端的存储位置

示例:

file: setting.py

STATICFILES_DIRS = (

os.path.join(BASE_DIR, "static"),

)

3.访问静态文件

使用静态文件的访问路径进行访问

访问路径: STATIC_URL = '/static/'

示例:

<img src="/static/images/lena.jpg">

<img src="http://127.0.0.1:8000/static/images/lena.jpg">

settings.py中设置

DEBUG = True #注意 如果将DEBUG设置为 False 将无法访问到静态文件

复制代码
STATIC_URL = '/static/'


STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "static"),
)

访问的例子 http://127.0.0.1:8000/static/code.png

通过 {% static %}标签访问静态文件

{% static %} 表示的就是静态文件访问路径

加载 static

{% load static %}

使用静态资源时

语法:

{% static '静态资源路径' %}

示例:

<img src="{% static 'images/lena.jpg' %}">

此setting配置静态文件的方案,只用于测试开发环境,

正式上线后,将采取新的解决方案:

​ 1、nginx 挂载静态文件

​ 2、CDN 内容网络分发服务,【阿里云 网宿 蓝汛】,将所有静态文件交由CDN即可

​ 只需将代码中所有src地址,填写成cdn公司提供的地址域名即可

​ CDN - 用户请求静态资源时,解析用户所在位置信息,将请求调度到离用户最近的服务器上,减少无必要网络层跳转


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/liuxingxing_star/article/details/103995191

下面使用 nginx 挂载静态文件的方式

首先需要收集形态资源文件

将你的工程,下面所有APP下面的static目录,收集到你的工程下面的 media将要被存放的目录

settings.py文件中新增配置项

STATIC_ROOT = os.path.join(BASE_DIR, "media") #将要收集的目录

STATICFILES_DIRS = (

os.path.join(BASE_DIR, "static"), #将要被收集的目录

)

STATICFILES_DIRS 是用来指定 Django 在收集静态文件时需要搜索的目录列表,而 STATIC_ROOT 则是指定 Django 在收集静态文件后将其存放的目录。STATICFILES_DIRS 中的文件会被收集到 STATIC_ROOT 指定的目录中,以便在部署时能够被服务器提供。STATIC_ROOT 应该是一个绝对路径。

STATICFILES_DIRS 将要被收集的目录, STATIC_ROOT 收集完存放的目录

注意 你工程下可以有很多个APP,每个APP下面都可以有一个static文件夹

相关推荐
枷锁—sha22 分钟前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
abluckyboy37 分钟前
Java 实现求 n 的 n^n 次方的最后一位数字
java·python·算法
发现一只大呆瓜40 分钟前
AI流式交互:SSE与WebSocket技术选型
前端·javascript·面试
喵手1 小时前
Python爬虫实战:构建各地统计局数据发布板块的自动化索引爬虫(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集数据csv导出·采集各地统计局数据发布数据·统计局数据采集
天天爱吃肉82182 小时前
跟着创意天才周杰伦学新能源汽车研发测试!3年从工程师到领域专家的成长秘籍!
数据库·python·算法·分类·汽车
m0_715575342 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python
wuhen_n2 小时前
JavaScript链表与双向链表实现:理解数组与链表的差异
前端·javascript
甄心爱学习2 小时前
【leetcode】判断平衡二叉树
python·算法·leetcode
wuhen_n2 小时前
JavaScript数据结构深度解析:栈、队列与树的实现与应用
前端·javascript
深蓝电商API2 小时前
滑块验证码破解思路与常见绕过方法
爬虫·python