Heroku的Procfile无法正常工作 - Django使用Waitress

时间:2017-10-08 09:37:24

标签: python django heroku

挣扎于Procfile我正在使用heroku工作。试图学习如何启动和运行基本的django网站,并从头开始构建一些东西。我在我的电脑上使用Windows来修补所以决定使用女服务员,但也许gunicorn会更容易?

如果我无法解决这个问题,我只会使用heroku的模板并从中构建,但我宁愿不去除我迄今所做的事情。

这是我的目录结构。

Root +---
    .git
    Include
    Lib
    Scripts
    Scripts
    Static
    tcl
    src +---
        �   db.sqlite3
        �   manage.py
        �
        +---alex1
        �   �   forms.py
        �   �   settings.py
        �   �   urls.py
        �   �   wsgi.py
        �   �   __init__.py
        �   �
        �   +---__pycache__
        �           settings.cpython-36.pyc
        �           urls.cpython-36.pyc
        �           wsgi.cpython-36.pyc
        �           __init__.cpython-36.pyc
        �
        +---profiles
            �   admin.py
            �   apps.py
            �   forms.py
            �   models.py
            �   tests.py
            �   views.py
            �   __init__.py
            �
            +---migrations
            �   �   0001_initial.py
            �   �   0002_profile_description.py
            �   �   0003_auto_20170905_1654.py
            �   �   0004_auto_20170905_1659.py
            �   �   __init__.py
            �   �
            �   +---__pycache__
            �           0001_initial.cpython-36.pyc
            �           0002_profile_description.cpython-36.pyc
            �           0003_auto_20170905_1654.cpython-36.pyc
            �           0004_auto_20170905_1659.cpython-36.pyc
            �           __init__.cpython-36.pyc
            �
            +---templates
            �       base.html
            �       contact.html
            �
            +---__pycache__
                    admin.cpython-36.pyc
                    forms.cpython-36.pyc
                    models.cpython-36.pyc
                    views.cpython-36.pyc
                    __init__.cpython-36.pyc

我收到的错误是

2017-10-08T09:33:38.547463+00:00 app[web.1]: There was an exception (ModuleNotFoundError) importing your module.
2017-10-08T09:33:38.547464+00:00 app[web.1]: It had these arguments:
2017-10-08T09:33:38.547464+00:00 app[web.1]: 1. No module named 'profiles'

这是我的proc文件。

web: waitress-serve --port=$PORT profiles.wsgi:application

谢谢大家 - 非常感谢您的帮助

1 个答案:

答案 0 :(得分:2)

首先,你的wsgi.py文件不在 src / profiles 里面 src / alex1 。此外,女服务员找不到您的应用个人资料,因为它不在python路径中。我不知道女服务员是否有一个参数来添加东西到PYTHONPATH(比如 gunicorn --pythonpath ),但无论如何你可以这样做:

chmod -R 777

我和女服务员一起工作,我看不出使用它而不是枪炮的改进。有些人说它性能更高,但根据我的经验,使用它会更烦人。