Django Custom 404 Page
Simple customization for 404 not found page. Django 3.0, official docs here.
Step 1: Preparation, Create Django Project, Initial Migration
install virtualenv: pip install virtualenv
create virtualenv: virtualenv venv
start virtualenv: venv/Scripts/activate
install Django in virtualenv: pip install django==3.0
Create Django: django-admin startproject myproject
Go to myproject folder: cd myproject
Migrate: python manage.py migrate
Step 2. Create Django Apps
Create apps: python manage.py startapp myapp
Add myapp to INSTALLED_APPS in myproject/settings.py
Step 3. Preparing Templates Folder
Add folder templates in myapp
Register myapp/templates in myproject/settings.py
os.path.join(BASE_DIR, 'myapp', 'template')
Step 4. Set DEBUG and ALLOWED_HOSTS
Set DEBUG=False and ALLOWED_HOSTS to ‘127.0.0.1’ in myproject/settings.py
DEBUG = FalseALLOWED_HOSTS = [‘127.0.0.1’]
Step 5. Add 404.html file in myapp/templates folder
Step 6. Update myapp/views.py
Step 7. Update myproject/urls.py
handler404 will override the default 404 page.
Step 8. Run and Try it in browser
python manage.py runserver
try to access page that not available in app, such as 127.0.0.1/not_found.