Thanks alot for your help devs On Sun, 27 Oct 2024 at 21:39, maina patrick <mainapatrick2...@gmail.com> wrote:
> To successfully host a Django website on cPanel and troubleshoot the 500 >> error occurring when DEBUG is set to False, here’s a comprehensive guide: >> Step 1: Prepare Django Project for Deployment >> >> 1. >> >> *Settings Adjustment*: >> - In your settings.py file, set DEBUG = False for production. >> - Add your domain to the ALLOWED_HOSTS list, like this: >> >> python >> Copy code >> ALLOWED_HOSTS = ['yourdomain.com', 'www.yourdomain.com'] >> >> 2. >> >> *Static Files Configuration*: >> - Set up the STATIC_ROOT for static files. For example: >> >> python >> Copy code >> STATIC_ROOT = os.path.join(BASE_DIR, 'static') >> >> - Run python manage.py collectstatic to gather all static files >> into the STATIC_ROOT directory. >> >> Step 2: Compress and Upload Your Project >> >> 1. *Compress the Project Folder*: >> - Zip your Django project files to simplify the upload. >> 2. *Upload the Zip File*: >> - Go to *File Manager* in cPanel, navigate to the root of your >> domain, and upload the zipped project. >> - Extract the zip file. >> >> Step 3: Create a Python App in cPanel >> >> 1. Go to *Setup Python App* in cPanel. >> 2. *Set the Python Version* (typically Python 3.7 or later). >> 3. *Select the Project Directory* where you uploaded your files. >> 4. *Configure the Virtual Environment*: >> - Set up the virtual environment by pointing to the folder where >> manage.py is located. >> 5. *Install Dependencies*: >> - Click *Enter to the virtual environment*. >> - Run pip install -r requirements.txt to install your project >> dependencies. >> >> Step 4: Configure Environment Variables >> >> 1. Go to the *Environment Variables* section in your Python App >> settings. >> 2. Set environment variables for DJANGO_SETTINGS_MODULE: >> >> plaintext >> Copy code >> DJANGO_SETTINGS_MODULE=yourproject.settings >> >> 3. If you’re using a secret key, add it as well: >> >> plaintext >> Copy code >> SECRET_KEY=your_secret_key >> >> >> Step 5: Set Up Database Settings >> >> 1. Configure the database in settings.py to use the production >> database (if not using SQLite). >> 2. Ensure that the database credentials are correct and accessible in >> the cPanel environment. >> >> Step 6: Check Permissions >> >> Ensure that all files and folders have the correct permissions: >> >> - Files: 644 >> - Folders: 755 >> >> Step 7: Adjust Allowed Hosts and Error Handling >> >> 1. *Test ALLOWED_HOSTS*: >> - Make sure your domain is added to ALLOWED_HOSTS. >> 2. *Configure Logging* in settings.py to catch errors: >> >> python >> Copy code >> LOGGING = { >> 'version': 1, >> 'disable_existing_loggers': False, >> 'handlers': { >> 'file': { >> 'level': 'ERROR', >> 'class': 'logging.FileHandler', >> 'filename': os.path.join(BASE_DIR, 'error.log'), >> }, >> }, >> 'loggers': { >> 'django': { >> 'handlers': ['file'], >> 'level': 'ERROR', >> 'propagate': True, >> }, >> }, >> } >> >> 3. *Check the Error Log*: >> - In cPanel, go to *Errors* under Metrics to see server logs. >> - Look in error.log in your project directory to identify specific >> errors. >> >> Step 8: Test and Debug >> >> 1. Restart the Python app in cPanel. >> 2. Access the site with DEBUG = False and check if it runs smoothly. >> 3. If the 500 error persists, inspect logs and address any >> misconfigurations. >> >> This should help troubleshoot and resolve the issue on cPanel with DEBUG >> set to False >> > > > > if the error persists let me know , happy to help > > > -- > You received this message because you are subscribed to the Google Groups > "Django users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to django-users+unsubscr...@googlegroups.com. > To view this discussion visit > https://groups.google.com/d/msgid/django-users/CA%2B7S-XsZRrTYSO5a6PaYjB47KTySw2aaRq2TvqoMOqer-ww-Eg%40mail.gmail.com > <https://groups.google.com/d/msgid/django-users/CA%2B7S-XsZRrTYSO5a6PaYjB47KTySw2aaRq2TvqoMOqer-ww-Eg%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscr...@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/django-users/CAE1sx0LA_bCr9bt7V7tvg0ELAFo4HOCaHHGvzmQ4p3nz%3DemfLw%40mail.gmail.com.