关于django(django-vue-admin)设置Debug为false后,导致线上静态资源目录media返回404问题解决。

衡修洁
2023-12-01

当把django的debug设置为False后,会引发media下的图片等静态资源文件,直接访问会返回404的解决办法:

在application\urls下面修改:

# 1. 引入这个
from django.views.static import serve as static_serve 
urlpatterns = (
        [
            re_path(
                r"^swagger(?P<format>\.json|\.yaml)$",
                schema_view.without_ui(cache_timeout=0),
                name="schema-json",
            ),
            # 2.添加 这个re_path路由。
            re_path(r'^media/(?P<path>.*)$', static_serve, {'document_root' : settings.MEDIA_ROOT}),
            # ... 其他
            path("api/system/", include("dvadmin.system.urls")),
            ...

settings.MEDIA_ROOT 的指,我这里是: MEDIA_ROOT = “media” # 项目下的目录

原理:原因是因为关闭DEBUG模式后,Django 便不提供静态文件服务了。需要我们手动去设置。

 类似资料: