Django部署在Heroku上,无法获得站点响应

时间:2016-06-08 22:55:41

标签: django heroku deployment heroku-postgres

我很难将我的django app(v1.9)部署到heroku(psql 9.5),cedar stack-14。

以下是我到达这里的方式:我遇到了巨大的迁移问题导致“”django.db.utils.ProgrammingError:关系已存在“”“和”“关系”django_content_type“的”Django列“名称”不存在“”“错误。确定在django_migrations表中导入了旧的,错误处理的迁移,我决定将一个新的本地数据库推送到一个空的heroku:

local b

这完美无瑕。之后,这是我运行这些命令时会发生的事情:

当我在本地运行heroku时,我的完整应用程序在0.0.0.0:5000本地显示。 (/ admin工作,但有css问题,大概是我导入的whitenoise模块在生产.env设置下处理不好)

当我在0.0.0.0:5000上运行heroku local -e .env.DEV(开发.env设置)时,所有内容,包括/ admin都运行得非常好。

当gunicorn进入画面时,问题就开始了。当我运行gunicorn config.wsgi:application时,它会运行,但是我得到“无法访问此站点,localhost花了太长时间才响应”空白页。

以下是空白网页的请​​求标题:

PGUSER=dbnameHERE PGPASSWORD=dbpassHERE heroku pg:push localDBnameHERE DATABASE --app appnameHERE

当我运行heroku时 - heroku运行python manage.py check --deploy,我明白了:

HTTP/1.1 301 Moved Permanently
Connection: keep-alive
Server: gunicorn/19.4.5
Date: Tue, 07 Jun 2016 22:39:00 GMT
Transfer-Encoding: chunked
Location: https://sitename.herokuapp.com/
Content-Type: text/html; charset=utf-8
X-Content-Type-Options: nosniff
X-Xss-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Via: 1.1 vegur

当我导航到运行gunicorn时获得的sitename.herokuapp.com时,相同的空白页面和301重定向没有错误代码。当gunicorn参与时,我猜测为什么我的应用程序会重定向?

2 个答案:

答案 0 :(得分:0)

我最终通过重新阅读Heroku docs解决了这个问题,它指出生产环境必须通过其仪表板界面或使用他们的heroku config:set命令单独加载其配置变量。 heroku cli。

我放置了我的配置变量$ VIRTUAL_ENV / bin / postactivate,在激活virtualenv后加载不同的virtualenv配置;但是,该文件未在生产中使用。

答案 1 :(得分:0)

<?php
public function cadastrarProdutos(array $dados)
{
  ...
  $segments = $dados["Segments"];
  foreach($segments as $seg)
  {
     $segm = $seg;
  }
  ...
}

可能会发生一些安全问题

相关问题