Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Load static files in Django Admin panel using Python in CPanel

I have already set up a Django Python application in my server with CPanel. The wsgi is correctly configured, the index.html (which doesn't have any css) runs properly but the admin panel doesn't load correctly the css.

I have been reading that I need to properly set the static files routes and none of this seems to work.

My settings.py file have the static directive in the installed apps and this lines at the end, where my static files of the python virtualenv is.

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static') #after collect static is run all the static files will be put in this folder
STATICFILES_DIRS = (['/home/djangouser/virtualenv/api/3.5/lib/python3.5/site-packages/django/contrib/admin/static/admin/'])

I have tried restaring the application but none of this work and my admin page still loading without css.

My index.html doesn't have any css so I don't know if this is only a problem of the admin... But I need to fix this up.

Thank you.

like image 252
David González Blazman Avatar asked Jun 21 '26 22:06

David González Blazman


1 Answers

The perfect solution is to serve static files via a webserver. But you can also do it with Python using Cling:

$ pip install dj-static static3

And update your wsgi.py:

...
from dj_static import Cling
...
application = Cling(get_wsgi_application())
like image 122
Máté Farkas Avatar answered Jun 24 '26 12:06

Máté Farkas