Приложение Django heroku успешно развернуто, но все еще показывает внутреннюю ошибку сервера, файлы журнала показывают, что сборка прошла успешно
Я пытаюсь развернуть свое Django-приложение на Heroku, но хотя журналы показывают, что сборка прошла успешно, и несмотря на успешное развертывание, приложение все равно выдает внутреннюю ошибку сервера; и это происходит при настройке debug на true или false. Вот файлы, которые я считаю важными (также я использую cloudinary api для этого проекта, и я не уверен, что это может быть проблемой; в любом случае я все равно решил включить свою конфигурацию в этот файл):
Мой Procfile:
web gunicorn MkusdaRegister.wsgi --log-file -
Мой последний журнал сборки
-----> Building on the Heroku-22 stack
-----> Using buildpack: heroku/python
-----> Python app detected
-----> Using Python version specified in runtime.txt
!
! A Python security update is available! Upgrade as soon as possible to:
python-3.10.8
! See: https://devcenter.heroku.com/articles/python-runtimes
!
-----> No change in requirements detected, installing from cache
-----> Using cached install of python-3.10.7
-----> Installing pip 22.2.2, setuptools 63.4.3 and wheel 0.37.1
-----> Installing SQLite3
-----> Installing requirements with pip
-----> $ python manage.py collectstatic --noinput
185 static files copied to '/tmp/build_f409c0b9/static'.
-----> Discovering process types
Procfile declares types -> web
-----> Compressing...
Done: 44.4M
-----> Launching...
Released v16
https://mkusda-events.herokuapp.com/ deployed to Heroku
Starting November 28th, 2022, free Heroku Dynos, free Heroku Postgres, and free
Heroku Data for Redis® will no longer be available.
If you have apps using any of these resources, you must upgrade to paid plans by
this date to ensure your apps continue to run and to retain your data. For
students, we will announce a new program by the end of September. Learn more at
https://blog.heroku.com/next-chapter
Мой файл settings.py:
Мой файл project/urls.py:
from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('admin/', admin.site.urls),
path('Accounts/', include('Accounts.urls')),
path('Events/', include('Events.urls'))
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root =
settings.MEDIA_ROOT)
Если кому-то нужно посмотреть мой код, просто дайте мне знать; мне очень нужна помощь в этом деле.
В файле urls.py вы указали корневой путь медиа, но на самом деле он не определен в вашем файле settings.py.
Вы можете определить, как указано ниже.
Base url to serve media files
MEDIA_URL = '/media/'
# Path where media is stored
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')
Я наконец-то выяснил проблему, я подключил свое приложение heroku к репозиторию github, где в папке одного из моих приложений отсутствовали некоторые папки и файлы; так что если вы случайно столкнетесь с подобной проблемой в будущем и ваша сборка будет успешной, пожалуйста, проверьте, есть ли у вас недостающие файлы, а также не забудьте проверить логи вашего сервера, большое спасибо Крису за предложение проверить мои логи. Счастливого кодинга :)