首页 > python web

Django静态文件加载失败解决方案

时间:2020-10-11 python web 查看: 1028

在我们平时的开发过程中,为了方便调试程序,我们都是打开开发者模式,即Debug=True,当我们正式上线的时候肯定就需要把开发者模式关掉,用uwsgi部署上去以后,突然发现我们平时辛苦做的项目的静态文件没有加载出来,卧槽,怎么办呢。。。当然你也不用着急,因为在人群中你多看了一眼这篇博客。

1,在静态页面使用下面的方法加载静态资源

页面要加载静态文件,而且最好是使用绝对路径,配置如下

2,在settings.py文件中配置

在settings.py新增下面代码

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, '/static/')
STATICFILES_DIRS = (
  os.path.join(BASE_DIR, 'static'),
)

3,在urls.py中配置

在urls.py新增下面代码

url(r'^static/(?P<path>.*)$', static.serve,
    {'document_root': settings.STATIC_ROOT}, name='static') # 解决静态文件加载失败问题

当然到这里本地上跑已经没问题了,但是用uwsgi启动项目发现还是没有静态文件。

4,收集,复制静态文件

使用如下下面命令收集文件

python manage.py collectstatic

启动uwsgi可以通过在uwsgi.ini文件中配置static-map配置或者通过--static-map参数启动

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持python博客。

展开全文
上一篇:基于CentOS搭建Python Django环境过程解析
下一篇:利用Python如何制作贪吃蛇及AI版贪吃蛇详解
输入字:
相关知识
django学习之ajax post传参的2种格式实例

AJAX除了异步的特点外,还有一个就是:浏览器页面局部刷新,下面这篇文章主要给大家介绍了关于django学习之ajax post传参的2种格式的相关资料,需要的朋友可以参考下

Python djanjo之csrf防跨站攻击实验过程

csrf攻击,即cross site request forgery跨站(域名)请求伪造,这里的forgery就是伪造的意思。这篇文章主要给大家介绍了关于Python djanjo之csrf防跨站攻击的相关资料,需要的朋友可以参考下

django admin实现动态多选框表单的示例代码

借助django-admin,可以快速得到CRUD界面,但若需要创建多选标签字段时,需要对表单进行调整,本文通过示例代码给大家介绍django admin多选框表单的实现方法,感兴趣的朋友跟随小编一起看看吧

Flask登录注册项目的简单实现

一个简单的用户注册和登录的页面,涉及到验证,数据库存储等等,本文主要介绍了Flask登录注册项目的简单实现,从目录结构开始,感兴趣的可以了解一下