Thanks alot for your help devs
On Sun, 27 Oct 2024 at 21:39, maina patrick <[email protected]>
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 [email protected].
> 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 [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/django-users/CAE1sx0LA_bCr9bt7V7tvg0ELAFo4HOCaHHGvzmQ4p3nz%3DemfLw%40mail.gmail.com.