we also need to modify wsgi py for herokubecause heroku needs slightly different setup than what we've been usingwsgi py --snip-import os from django core wsgi import get_wsgi_application from dj_static import cling os environ setdefault("django_settings_module""learning_log settings"application cling(get_wsgi_application()we import clingwhich helps serve static files correctlyand use it to launch the application this code will work locally as wellso we don' need to put it in an if block making directory for static files on herokudjango collects all the static files and places them in one place so it can manage them efficiently we'll create directory for these static files inside the learning_log folder we've been working from is another folder called learning_log in this nested foldermake new folder called static with the path learning_log/learning_log/staticwe also need to make placeholder file to store in this directory for nowbecause empty directories won' be included in the project when it' pushed to heroku in the staticdirectorymake file called placeholder txtplaceholder txt this file ensures that learning_log/staticwill be added to the project django will collect static files and place them in learning_log/staticthere' nothing special about this textit just reminds us why we included this file in the project using the gunicorn server locally if you're using linux or os xyou can try using the gunicorn server locally before deploying to heroku from an active virtual environmentrun the command heroku local to start the processes defined in procfile(ll_env)learning_logheroku local installing heroku toolbelt done --snip-forego starting web on port web : : - [ [infostarting gunicorn web : : - [ [infolistening atw web : : - [ [infobooting worker with pid