heroku部署django之静态文件配置

原创 2015年07月09日 21:17:18

大部分步骤如官网的文档 :

https://devcenter.heroku.com/articles/getting-started-with-django 


要将自己的django项目部署到heroku,需要添加或修改一下五个文件:

  1. Procfile
  2. requirements.txt
  3. runtime.txt
  4. wsig.py
  5. settings.py
前四个不易出错,我在修改settings.py时,静态文件的路径在heroku中的配置总是不能成功,而在本地却没问题,因此也坑了挺久。
后来发现,在heroku的官方文档中也有专门说明静态文件的配置的一节:https://devcenter.heroku.com/articles/django-assets

因此在此记录应该注意的地方。

settings.py中静态文件路径的设置:
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
STATIC_ROOT = 'staticfiles'
STATIC_URL = '/static/'

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


而对应的工程目录结构:
  • djangoProject
    • mysite
      • mysite
        • __init__.py
        • templates
        • static
          • images
          • css
        • settings.py
        • urls.py
        • wsgi.py
      • manage.py
      • Procfile
      • requirements.txt
      • runtime.txt
urls.py 中加入规则:
(r'static/$','django.views.static.serve',{'document_root':settings.STATIC_ROOT}),
以上是比较简单可用的配置,官方的文档中有更好的推荐。

而原来在本地可以成功,在部署到heroku上却不能成功的代码:
STATIC_URL = '/static/'
STATIC_ROOT = os.path.dirname(os.path.abspath(__file__))
STATICFILES_DIRS = (
    ('css',os.path.join(STATIC_ROOT,'css').replace('\\','/')),
    ('images',os.path.join(STATIC_ROOT,'images').replace('\\','/')),
)


heroku替换新app

我使用的是git bashWelcome to Git (version 1.8.1.2-preview20130201) Run 'git help git' to display the help...
  • ch7543658
  • ch7543658
  • 2014年08月05日 14:34
  • 3384

heroku 部署flask应用

运行环境:ubuntu 14.04 ; python 2.7.6; git 2.7;遇到bug : 1 ,heroku login 无法登陆 2,本地模拟heroku 测...
  • happy_bigqiang
  • happy_bigqiang
  • 2016年04月18日 15:36
  • 2120

在Heroku上部署Java应用-连接数据库

原文:https://devcenter.heroku.com/articles/connecting-to-relational-databases-on-heroku-with-java 部署在...
  • xianqiang1
  • xianqiang1
  • 2013年02月19日 16:50
  • 2399

django项目部署到heroku

django项目部署到heroku
  • w13508763507
  • w13508763507
  • 2015年01月10日 23:41
  • 488

django部署静态文件的设置

原文:http://wangye.org/blog/archives/572/ 解决Django Admin管理界面样式表(CSS Style)丢失问题 2012 年 3 月 9 日 ...
  • yuanchao99
  • yuanchao99
  • 2012年07月17日 18:12
  • 9549

django 1.8 官方文档翻译: 6-6-4 部署静态文件

部署静态文件 另见 django.contrib.staticfiles 的用法简介,请参见管理静态文件(CSS、images)。 在线上环境部署静态文件 放置静态文件到线上环境的...
  • wizardforcel
  • wizardforcel
  • 2015年08月29日 10:11
  • 332

django在apache下的部署包括静态文件解析(笔记)

前段时间,我写过一篇文章,ngixn,uwsgi,django,python 环境配置,有兴趣的朋友可以参考 nginx,django部署 后来有人在QQ上问我,用Apache 好部署吗?我当时...
  • w6299702
  • w6299702
  • 2014年10月13日 22:13
  • 605

Django 静态文件部署

主要解决的是Django 1.5的问题在所有的Models、Templates和Views都编好的情况下,怎么在Templates中设置正确的CSS和JS等静态文件的路径成了一个问题。直接引用位置不行...
  • u012798391
  • u012798391
  • 2013年12月02日 00:25
  • 1921

在阿里云上部署Django应用后,页面403错误,始终无法加载静态文件的解决方案

设置好了 nignx uwsgi 还有一大堆乱七八糟的东西之后, 费劲九牛二虎之力,好不容易登上了自己写的网站,结果却发现,静态文件全都没有加载出来… mdzz!!! 改来改去也改不好,万般无奈,...
  • HeatDeath
  • HeatDeath
  • 2017年04月23日 23:53
  • 1006

django 中静态文件配置 static

环境 centos7 django 1.11 nginx 白话我们可以使用Template 设置我们的网页,同时,一个完美的网页需要css,js,image 等静态文件的支持。django中配置方式貌...
  • sinat_21302587
  • sinat_21302587
  • 2017年07月01日 14:03
  • 11070
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:heroku部署django之静态文件配置
举报原因:
原因补充:

(最多只允许输入30个字)