At Prabhu Host, deploying Django projects on your hosting account is now simple and beginner-friendly. Whether you're a developer or experimenting with your first Python web app, our cPanel interface and Python App installer make it easy to get started.
This guide is for users on Cloud Hosting, Reseller Hosting, or VPS with cPanel + CloudLinux.
Step 1: Prepare Your Django Project Locally
Before uploading your project, make sure you:
-
Have a working Django project (
manage.py,settings.py, etc.) -
Use a virtual environment locally (recommended)
-
Include a
requirements.txtfile with all dependencies:
Step 2: Upload Your Project to cPanel
-
Login to cPanel.
-
Open File Manager and go to your desired folder (e.g.,
public_html/django). -
Upload your Django project files and folders (excluding your local virtual environment).
-
Ensure your project structure looks like:
Step 3: Set Up the Python Application
-
In cPanel, go to Software > Setup Python App.
-
Click Create Application.
-
Fill in the details:
-
Python version: Choose Python 3.9+ (depending on availability).
-
Application Root: The directory where you uploaded your project (
django_project). -
Application URL: Optional — where it will be accessed.
-
Application startup file:
passenger_wsgi.py(you’ll create this file below).
-
-
Click Create.
Step 4: Configure WSGI File
-
In the same application folder (e.g.,
django_project/), create a file named: -
Edit it and paste:
Replace
'django_project.settings'with your actual settings module path if different.
Step 5: Install Project Dependencies
-
Go back to Setup Python App in cPanel.
-
Click the pencil (edit) icon next to your app.
-
Scroll down and click Enter to Virtual Environment.
-
Run:
Step 6: Database & Migrations
-
Create a database from cPanel > MySQL® Databases.
-
Update your
settings.pywith the correct DB name, user, and password. -
In the virtual environment terminal:
Step 7: Run Collectstatic (If Needed)
If you're using static files (CSS, JS, images):
Make sure to set the correct
STATIC_ROOTin yoursettings.py.
You're Live!
Visit your domain or the subdirectory you assigned. If everything is set correctly, your Django app should be up and running on Prabhu Host.
Optional Tips
-
Set
DEBUG = Falseand add your domain toALLOWED_HOSTSbefore going live. -
Use
.envfiles oros.environfor sensitive credentials. -
Add custom error pages (
404.html,500.html) for production use.