首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

heroku上的基本Django静态文件部署

在Heroku上部署Django应用的静态文件,可以通过以下步骤完成:

  1. 在Django项目的根目录下创建一个名为static的文件夹,用于存放静态文件(如CSS、JavaScript、图像等)。
  2. 在项目的settings.py文件中,确保以下设置已正确配置:
代码语言:python
代码运行次数:0
复制

settings.py

静态文件目录

STATIC_URL = '/static/'

STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')

额外的静态文件目录(可选)

STATICFILES_DIRS = [

代码语言:txt
复制
   os.path.join(BASE_DIR, 'static')

]

代码语言:txt
复制
  1. 在项目的根目录下创建一个名为Procfile的文件(如果不存在),并添加以下内容:
代码语言:txt
复制

web: gunicorn 项目名.wsgi --log-file -

代码语言:txt
复制
  1. 在项目的根目录下创建一个名为runtime.txt的文件(如果不存在),并添加以下内容,指定使用的Python版本:
代码语言:txt
复制

python-3.9.7

代码语言:txt
复制
  1. 在项目的根目录下创建一个名为requirements.txt的文件(如果不存在),并添加以下内容,列出项目所需的依赖包:
代码语言:txt
复制

Django==3.2.8

gunicorn==20.1.0

代码语言:txt
复制
  1. 使用Git将项目推送到Heroku的Git仓库:
代码语言:bash
复制

$ git init

$ git add .

$ git commit -m "Initial commit"

$ heroku create # 创建Heroku应用

$ git push heroku master

代码语言:txt
复制
  1. 执行以下命令,启动Django应用程序:
代码语言:bash
复制

$ heroku ps:scale web=1

代码语言:txt
复制
  1. 最后,执行以下命令,收集静态文件并将其部署到Heroku上:
代码语言:bash
复制

$ heroku run python manage.py collectstatic

代码语言:txt
复制

完成以上步骤后,静态文件将被正确部署到Heroku上,并可以通过https://your-app-name.herokuapp.com/static/访问到。请将your-app-name替换为你在Heroku上创建的应用程序名称。

腾讯云相关产品推荐:

  • 云服务器(CVM):提供高性能、可扩展的云服务器实例,适用于各种应用场景。产品介绍:云服务器
  • 对象存储(COS):安全、稳定、低成本的云端对象存储服务,适用于存储和处理静态文件。产品介绍:对象存储
  • 云数据库 MySQL 版(TencentDB for MySQL):高可用、可扩展的云数据库服务,适用于存储和管理数据。产品介绍:云数据库 MySQL 版
  • 云函数(SCF):事件驱动的无服务器计算服务,适用于处理后端逻辑。产品介绍:云函数

请注意,以上推荐的腾讯云产品仅供参考,具体选择应根据实际需求进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

解决django部署静态文件404问题

用过django内置服务器127.0.0.1:8000都知道,如果debug=False时候那么django就不会自己去寻找静态文件了, 那么这个时候就需要自己去设置静态文件路径,为此,我踩过不少坑...,这篇文章能够很好解决这个问题 我部署环境是centos7.6 + django + uwsgi + nginx 详情请参考此博客下部署文章 在nginx中设置好静态文件路径,用绝对路径指向静态文件...static即可,media同理 location /static{ alias /data/wwwroot/project/static; } 正文开始 如果你项目部署后所有的静态文件都出现了404...,那么你应该检查一下,你setting中是否有设置 因为线上环境是不可能开启debug,总结就是开启debug关了之后就不会django就不会自己找静态文件了 所以,只需要自己设置好路由,让django...  # 收集全部静态文件到STATIC_URL定义路径内 然后重启你uwsgi和nginx看看效果吧 这样就可以解决关了debug后静态文件丢失问题,踩了n多坑之后总结出来经验,分享给你们!

6.6K30

分离django媒体文件静态文件

作者: knthony django项目中,占很大体积静态文件,媒体文件还有html代码,那我们该如何把它们分离出来以方便我们和服务器去管理和使用它们。...static 文件 static,顾名思义就是静态文件django自带了一个命令讲项目中所有的静态文件提取出来 python3 manage.py collectstatic 我习惯将这些可以从外部引入文件放在项目的根目录下...,我们运行完上面的命令就会发现我们项目结构中会多一个static文件 然后配置DemoProject下url,添加 from django.contrib.staticfiles.urls import...网站上总是会有音乐视频或者图片等体积比较大文件,那我们将这些也从django项目中分离出来并进行调用 首先我们在和static同目录下新建一个media文件夹,在media中新建一个image作为我们存放图片文件夹.../image下图片或者视频了 templates 如果我们想把项目中网页代码文件归类分离出来 第一步: TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates

1.7K40
  • 关于“Python”核心知识点整理大全62

    20.2.3 安装必要包 你还需安装很多包,以帮助在服务器支持Django项目提供服务。...dj-database-url包帮助 DjangoHeroku使用数据库进行通信,dj-static和static3包帮助Django正确地管理静态文件, 而gunicorn是一个服务器软件,能够在在线环境中支持应用程序提供服务...有鉴于此,我们可以信心满满,深信项目部署Heroku后,行为将与它在 本地系统完全相同。当你在自己系统开发并维护各种项目时,这将是一个巨大优点。...其他设置作用分别如下:支持HTTPS请求(见3);让Django能够使用 HerokuURL来提供项目提供服务(见4);设置项目,使其能够在Heroku正确地提供静态 文件(见5)。...20.2.9 创建用于存储静态文件目录 在HerokuDjango搜集所有的静态文件,并将它们放在一个地方,以便能够高效地管理它 们。我们将创建一个用于存储这些静态文件目录。

    15710

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

    部署静态文件 另见 django.contrib.staticfiles 用法简介,请参见管理静态文件(CSS、images)。...在线上环境部署静态文件 放置静态文件到线上环境基本步骤很简单:当静态文件改变时,运行collectstatic 命令,然后安排将收集好静态文件目录(STATIC_ROOT) 搬到静态文件服务器。...网站和静态文件位于同一台服务器 如果你静态文件和网站位于同一台服务器,流程可能像是这样: 将你代码推送到部署服务器。...既然你静态文件服务器不会允许Django,你将需要修改部署策略,大概会是这样: 当静态文件改变时,在本地运行collectstatic。...当使用这些服务时,除了不是使用rsync 传输你静态文件到服务器而是到存储提供商或CDN 之外,基本工作流程和上面的差不多。

    42440

    django配置app中静态文件步骤

    配置静态文件两种方式: 1 配置单独app下静态文件,比如某个app下单独图片。...', ) 2.1 如果我们要配置单独app下静态文件的话,执行此步骤。...静态文件搜寻路径 '/var/www/static/', # 第二选project静态文件搜寻路径,还可以有第三选,第四选…… ) 3.1 如果我们要配置单独app下静态文件的话,执行此步骤。...补充知识:Djangotemplates 和 static静态文件 如果Django顶层目录中没有templates的话,就自己新建一个Directory ,这个文件是存放html文件 1)如果在...os.path.join(BASE_DIR, "statics") } 以上这篇django配置app中静态文件步骤就是小编分享给大家全部内容了,希望能给大家一个参考。

    2.9K20

    Heroku部署 Django 应用

    Heroku是一个很棒平台,它有很多控件,并且搭建环境相对来说也比较容易。本指南中,我将一步一步指导你在Heroku平台上部署一个简单地Django应用。...在这篇指南中,我们用"Sample-Project"作为应用名字。 Git仓库 在部署应用到Heroku之前,你需要先将你代码签入git仓库中。...- Django - Gunicorn (WSGI服务器) - dj-database-url (一个Django配置工具) - dj-static (一个Django静态文件服务器) (venv)$...简单地创建一个ProcFile文件,如下面的一行例子所示。 web: gunicorn Sample_Project.wsgi --log-file - 2. 查看你希望部署代码远程服务器简称。...验证你部署代码 $ heroku open 你应该看到标准Django开始页面(显示是)“It worked!

    1.6K10

    Nginx 不能访问 (找不到)Django 静态文件原因

    前提 django 部署模式为 debug = False(debug = True 找不到静态文件基本是配置错误,去详细检查 settings.py 里 STATIC_URL、STATICFILES_DIRS...配置) 现象 访问静态文件 网页状态码为:404 首先要用 F12,查看 静态文件路由,然后用 这个路由 去 静态文件目录 找这个文件是否存在。.../static_root) Nginx 配置静态文件路径没使用 django 项目的 settings.py 里 STATIC_ROOT 指向目录 Nginx 配置规则屏蔽了 js、css 等结尾静态文件...django 项目的 settings.py 里 STATIC_ROOT 不是独立目录,确保是独立目录而不是 py 语句(如:STATIC_ROOT = 'static_root/' ,然后重新收集静态文件.../(Django 2.x) Nginx 下部署 django centos7 + virtualenv + django + uwsgi + nginx 部署站点

    3K30

    关于“Python”核心知识点整理大全64

    开发项目时,Django错误页面向你显示了重要调试信息,如果将项目 部署到服务器后依然保留这个设置,将给攻击者提供大量可供利用信息。...别忘了,标 志-am让Git提交所有修改过文件,并记录一条日志消息。Git找出唯一一个修改过文件,并将 所做修改提交到仓库。...在本地查看错误页面 在将项目推送到Heroku之前,如果你要在本地查看错误页面是什么样,首先需要在本地设 置中设置Debug=False,以禁止显示默认Django调试页面。...(在settings.py 中用于Heroku部署部分中,确保DEBUG依然被设置为False)。...为部署这里所做修改,再次提交,并将项目推送到Heroku。 20.2.18 继续开发 将项目“学习笔记”推送到服务器后,你可能想进一步开发它或开发要部署其他项目。

    9810

    Django学习-第五讲:模板中静态文件加载

    静态文件 一个网站中除了正常html页面之外,还有相应样式,以及js等其他文件,我们把除了html网页外文件称之为静态资源文件,下面我们介绍一下怎么在django中去加载静态资源文件 1.1 加载静态资源文件第...加载静态文件步骤如下: 1.首先确保django.contrib.staticfiles已经添加到settings.INSTALLED_APPS中。...3.在已经安装了app下创建一个文件夹叫做static,然后再在这个static文件夹下创建一个当前app名字文件夹,再把静态文件放到这个文件夹下。...原因是如果直接把静态文件放在static文件夹下,那么在模版加载静态文件时候就是使用logo.jpg,如果在多个app之间有同名静态文件,这时候可能就会产生混淆。...那么我们就需要手动将请求静态文件url与静态文件路径进行映射了。

    2.1K20

    使用nginx缓存服务器静态文件

    一、nginx缓存优点 ? 如图所示,nginx缓存,可以在一定程度上,减少源服务器处理请求压力。 因为静态文件(比如css,js, 图片)中,很多都是不经常更新。...proxy_temp_file_write_size 设置nginx每次写数据到临时文件size(大小)限制 proxy_temp_path 从后端服务器接收临时文件存放路径 proxy_cache_path...为不同响应状态码设置不同缓存时间 expires 缓存时间 ---- 这里我设置了图片、css、js静态资源进行缓存。...当解析到上述文件名结尾静态资源,会到缓存区获取静态资源。 如果获取到对应资源,则直接返回数据。 如果获取不到,则将请求转发给proxy_pass指向地址进行处理。...四、参考 [1] nginx文档 [2] nginx反向缓存代理详解 [3] Nginx缓存服务器静态文件 五、后记 我GitHub仓库 Give me a star,if it’s work out

    5K40

    使用nginx缓存服务器静态文件

    一、nginx缓存优点 图片 如图所示,nginx缓存,可以在一定程度上,减少源服务器处理请求压力。 因为静态文件(比如css,js, 图片)中,很多都是不经常更新。...proxy_temp_file_write_size 设置nginx每次写数据到临时文件size(大小)限制 proxy_temp_path 从后端服务器接收临时文件存放路径 proxy_cache_path...proxy_cache_valid 为不同响应状态码设置不同缓存时间 expires 缓存时间 ---- 这里我设置了图片、css、js静态资源进行缓存。...当解析到上述文件名结尾静态资源,会到缓存区获取静态资源。 如果获取到对应资源,则直接返回数据。 如果获取不到,则将请求转发给proxy_pass指向地址进行处理。...add_header是用于在报头设置自定义信息。 所以,如果缓存有效的话,那么静态资源返回报头,一定会带上这个信息。

    4K20

    Django添加bootstrap框架时无法加载静态文件解决方式

    html文件写法如下: ? 这样设置一直无法加载静态文件,只需要修改setting.py文件如下: ? 就可以加载到静态文件了。...补充知识:Django-项目上线后,静态文件配置失效以及404、500页面的全局配置 一.项目上线后静态文件失效 1.因为项目还没上线时候,django会默认从setting.py中这个设置 STATIC_URL...,’static’) 6.项目下总urls.py(不是appurls.py)中: #项目上线后,需要自己配置static静态文件路径 url(r’^static/(?...(及debug=False,生产环境配置需设置好才有效) 2.项目下总urls.py(不是appurls.py)中,urlpatterns下面添加: from XMJonline.settings...7.成功跳转到自己配置500页面。 以上这篇Django添加bootstrap框架时无法加载静态文件解决方式就是小编分享给大家全部内容了,希望能给大家一个参考。

    2.4K20

    关于“Python”核心知识点整理大全63

    我们还指定不跟踪目录 __pycache__,这个目录包含Django运行.py文件时自动创建.pyc文件。...接下来,我们执行命令git push heroku master(见3), 它让Git将项目的分支master推送到Heroku刚才创建仓库中;Heroku随后使用这些文件在其服务 器创建项目。...要对Heroku项目执行Django和Python命令,可使用命令heroku run。...在3处,Django应用默认迁移以及我们在开发“学习笔记” 期间生成迁移。 现在如果你访问这个部署应用程序,将能够像在本地系统一样使用它。...注意 你使用Heroku提供免费服务来部署项目时,如果项目在指定时间内未收到请求或过 于活跃,Heroku将让项目进入休眠状态。

    10610

    Django使用(宝塔面板)uwsgi部署配置以及django日志文件处理方法

    首先保证你有一个可运行django工程 然后在虚拟环境里面安装好uwsgi 1 pip install uwsgi 配置nginx服务如下 1 2 3 4 5 6 7 8 9 10 11 12 13...uwsgi里一致  } } 这里需要注意是,nginx中 location /account 要和你在django地址一致,即django 和nginx是可以找到路由 先在脚本中测试使用简单命令启动服务...最后是写入到配置文件运行方式,新建一个test.ini 文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 [uwsgi] #监听地址...# 你项目使用虚拟环境根目录 绝对地址 home = /home/aeasringnar/.envs/jwt-test #你日志目录,注意是,你django控制台输出日志都会在这里输出...1 kill -9 PID号 本例小窍门:关闭所有uwsgi进程命令 1 killall -9 uwsgi 以上这篇Django使用uwsgi部署配置以及django日志文件处理方法就是小编分享给大家全部内容了

    2.2K20

    Django应用上线前有哪些注意事项?如何使用同步或异步容器启动Django应用?

    2、选择 Django App 托管环境 (IaaS/PaaS,比如阿里云 / AWS/Azure/GAE/Heroku 等等) 密钥存储和管理: 从配置文件中读取,或者从环境变量中读取(明文):...python manage.py check --deploy 4、部署到生产环境: 选择静态资源文件托管环境:可以使用Apache / Nginx / CDN服务器。...,或者上传到CDN服务器,让CDN回源到服务器这个目录,从而找到静态资源文件。...工具应该搜索静态文件其他目录 5、部署 Django 应用容器 同步应用: uWSGI: C 实现 Python Web 容器;Web 服务器 Apache/Nginx 与 django-uwsgi...生产环境中将提供静态资源服务功能放在前端Web服务器上去,比如Nginx Tengine或者是Apache,再对于其它动态请求做URL路由分发转发到后端容器服务。

    1.5K20
    领券