欢迎来到海上华帆的博客园子

记录一些学习过程中的心得体会,供自己和有缘人参考!

关于静态文件目录与模板引用和Nginx location块的适配设置

项目配置文件内关于静态文件的设置项

# 静态文件的 URL 前缀
STATIC_URL = '/static/'

# 项目根目录的静态文件目录
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
    os.path.join(BASE_DIR, 'parallel/static'),
    os.path.join(BASE_DIR, 'blog/static'),
    os.path.join(BASE_DIR, 'app1/static'),
]

# 静态文件的根目录(用于 collectstatic 命令)
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
# 一般用于在生产环境中使用命令`python manage.py collectstatic`将所有静态文件统一收集到`staticfiles`

模板文件中引用静态文件的格式

	{% load static %}
    <img src="{% static 'app1/img/carousel/平行世界.jpg' %}" alt="平行世界" class="d-block w-100 ">

真实文件路径

/home/lyh/aipw/app1/static/app1/img/carousel/平行世界.jpg

项目文件的目录结构

project_root/
├── static/
├── parallel/
│   └── static/
│          └──parallel/
│                    └──img/parallel-logo.png
├── blog/
│   └── static/
│          └──blog/
│                └──img/blog-logo.png
└── app1/
    └── static/
│          └──app1/
│                └──img/app1-logo.png

在生产环境中,Nginx的配置参考如下

location /static/ {
                alias /home/lyh/aipw/static/;

        }

        location /static/app1/ {
                alias /home/lyh/aipw/app1/static/app1/;
        }

        location /static/blog/ {
                alias /home/lyh/aipw/blog/static/blog/;
        }

        location /static/parallel/ {
                alias /home/lyh/aipw/parallel/static/parallel/;
        }
posted @ 2024-07-16 21:15  海上华帆  阅读(31)  评论(0)    收藏  举报