title: Failed to exec Python script file '/home/dev/project/project/wsgi.py'.Exception occurred processing WSGI script '/home/dev/project/project/wsgi.py'
body: <p>I am trying to host my django website on a VPS provided by Hostinger. The server is running on Ubuntu 20.04 64bit. I got the website to run without apache2 by running the command
  <code>python manage.py runserver</code>
  <br>
  After I set up the apache2 server I am getting the 500 internal server error.
  I checked the error logs and it shows this</p>
  <pre><code> [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388] mod_wsgi (pid=22109): Failed to exec Python script file '/home/dev/medovation_inc/medovation_inc/wsgi.py'.
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388] mod_wsgi (pid=22109): Exception occurred processing WSGI script '/home/dev/medovation_inc/medovation_inc/wsgi.py'.
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388] Traceback (most recent call last):
  [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/home/dev/medovation_inc/medovation_inc/wsgi.py&quot;, line 16, in &lt;module&gt;
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     application = get_wsgi_application()
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/home/dev/medovation_inc/venv/lib/python3.8/site-packages/django/core/wsgi.py&quot;, line 12, in get_wsgi_application
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     django.setup(set_prefix=False)
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/home/dev/medovation_inc/venv/lib/python3.8/site-packages/django/__init__.py&quot;, line 19, in setup
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
  [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/home/dev/medovation_inc/venv/lib/python3.8/site-packages/django/conf/__init__.py&quot;, line 83, in __getattr__
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     self._setup(name)
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/home/dev/medovation_inc/venv/lib/python3.8/site-packages/django/conf/__init__.py&quot;, line 70, in _setup
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     self._wrapped = Settings(settings_module)
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/home/dev/medovation_inc/venv/lib/python3.8/site-packages/django/conf/__init__.py&quot;, line 177, in __init__
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     mod = importlib.import_module(self.SETTINGS_MODULE)
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/usr/lib/python3.8/importlib/__init__.py&quot;, line 127, in import_module
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     return _bootstrap._gcd_import(name[level:], package, level)
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;&lt;frozen importlib._bootstrap&gt;&quot;, line 1014, in _gcd_import
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;&lt;frozen importlib._bootstrap&gt;&quot;, line 991, in _find_and_load
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;&lt;frozen importlib._bootstrap&gt;&quot;, line 975, in _find_and_load_unlocked
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;&lt;frozen importlib._bootstrap&gt;&quot;, line 671, in _load_unlocked
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;&lt;frozen importlib._bootstrap_external&gt;&quot;, line 783, in exec_module
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;&lt;frozen importlib._bootstrap&gt;&quot;, line 219, in _call_with_frames_removed
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/home/dev/medovation_inc/medovation_inc/settings.py&quot;, line 18, in &lt;module&gt;
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     config = json.load(config_file)
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/usr/lib/python3.8/json/__init__.py&quot;, line 293, in load
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     return loads(fp.read(),
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/usr/lib/python3.8/json/__init__.py&quot;, line 357, in loads
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     return _default_decoder.decode(s)
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/usr/lib/python3.8/json/decoder.py&quot;, line 337, in decode
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     obj, end = self.raw_decode(s, idx=_w(s, 0).end())
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]   File &quot;/usr/lib/python3.8/json/decoder.py&quot;, line 353, in raw_decode
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388]     obj, end = self.scan_once(s, idx)
   [wsgi:error] [pid 22109:tid 140485106763520] [remote 49.206.15.222:58388] json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 4 column 1 (char 71)
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495] mod_wsgi (pid=22109): Failed to exec Python script file '/home/dev/medovation_inc/medovation_inc/wsgi.py'.
  [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495] mod_wsgi (pid=22109): Exception occurred processing WSGI script '/home/dev/medovation_inc/medovation_inc/wsgi.py'.
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495] Traceback (most recent call last):
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/home/dev/medovation_inc/medovation_inc/wsgi.py&quot;, line 16, in &lt;module&gt;
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     application = get_wsgi_application()
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/home/dev/medovation_inc/venv/lib/python3.8/site-packages/django/core/wsgi.py&quot;, line 12, in get_wsgi_application
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     django.setup(set_prefix=False)
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/home/dev/medovation_inc/venv/lib/python3.8/site-packages/django/__init__.py&quot;, line 19, in setup
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/home/dev/medovation_inc/venv/lib/python3.8/site-packages/django/conf/__init__.py&quot;, line 83, in __getattr__
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     self._setup(name)
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/home/dev/medovation_inc/venv/lib/python3.8/site-packages/django/conf/__init__.py&quot;, line 70, in _setup
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     self._wrapped = Settings(settings_module)
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/home/dev/medovation_inc/venv/lib/python3.8/site-packages/django/conf/__init__.py&quot;, line 177, in __init__
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     mod = importlib.import_module(self.SETTINGS_MODULE)
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/usr/lib/python3.8/importlib/__init__.py&quot;, line 127, in import_module
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     return _bootstrap._gcd_import(name[level:], package, level)
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;&lt;frozen importlib._bootstrap&gt;&quot;, line 1014, in _gcd_import
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;&lt;frozen importlib._bootstrap&gt;&quot;, line 991, in _find_and_load
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;&lt;frozen importlib._bootstrap&gt;&quot;, line 975, in _find_and_load_unlocked
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;&lt;frozen importlib._bootstrap&gt;&quot;, line 671, in _load_unlocked
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;&lt;frozen importlib._bootstrap_external&gt;&quot;, line 783, in exec_module
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;&lt;frozen importlib._bootstrap&gt;&quot;, line 219, in _call_with_frames_removed
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/home/dev/medovation_inc/medovation_inc/settings.py&quot;, line 18, in &lt;module&gt;
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     config = json.load(config_file)
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/usr/lib/python3.8/json/__init__.py&quot;, line 293, in load
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     return loads(fp.read(),
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/usr/lib/python3.8/json/__init__.py&quot;, line 357, in loads
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     return _default_decoder.decode(s)
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/usr/lib/python3.8/json/decoder.py&quot;, line 337, in decode
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     obj, end = self.raw_decode(s, idx=_w(s, 0).end())
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]   File &quot;/usr/lib/python3.8/json/decoder.py&quot;, line 353, in raw_decode
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495]     obj, end = self.scan_once(s, idx)
   [wsgi:error] [pid 22109:tid 140485140334336] [remote 49.206.15.222:57495] json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 4 column 1 (char 71)
  </code></pre>
  <br>
  this is my apache2 config file
  <br>
  ```
  
  <br>
  <pre><code>    ServerAdmin webmaster@localhost
      DocumentRoot /var/www/html
  
      # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
      # error, crit, alert, emerg.
      # It is also possible to configure the loglevel for particular
      # modules, e.g.
      #LogLevel info ssl:warn
  
      ErrorLog ${APACHE_LOG_DIR}/error.log
      CustomLog ${APACHE_LOG_DIR}/access.log combined
  
      # For most configuration files from conf-available/, which are
      # enabled or disabled at a global level, it is possible to
      # include a line for only one particular virtual host. For example the
      # following line enables the CGI configuration for this host only
      # after it has been globally disabled with &quot;a2disconf&quot;.
      #Include conf-available/serve-cgi-bin.conf
  
      Alias /static /home/dev/project_name/static
      &lt;Directory /home/dev/project_name/static&gt;
              Require all granted
      &lt;/Directory&gt;
  
      Alias /media /home/dev/project_name/media
      &lt;Directory /home/dev/project_name/media&gt;
              Require all granted
      &lt;/Directory&gt;
  
      &lt;Directory /home/dev/project_name/project_name&gt;
              &lt;Files wsgi.py&gt;
                      Require all granted
              &lt;/Files&gt;
      &lt;/Directory&gt;
  
      WSGIScriptAlias / /home/dev/project_name/project_name/wsgi.py
      WSGIDaemonProcess django_app python-path=/home/dev/project_name python-home=/home/dev/project_name/venv
      WSGIProcessGroup django_app
  </code></pre>
  
  ```
  <br>
  this is my settings.py file
  <br>
  <pre><code>from pathlib import Path
  import os
  import json
  
  with open(&quot;/etc/config.json&quot;) as config_file:
      config = json.load(config_file)
  
  # Build paths inside the project like this: BASE_DIR / 'subdir'.
  BASE_DIR = Path(__file__).resolve().parent.parent
  
  
  # Quick-start development settings - unsuitable for production
  # See https://docs.djangoproject.com/en/3.1/howto/deployment/checklist/
  
  # SECURITY WARNING: keep the secret key used in production secret!
  SECRET_KEY = config['SECRET_KEY']
  
  # SECURITY WARNING: don't run with debug turned on in production!
  DEBUG = True
  
  ALLOWED_HOSTS = ['server_ip_address']
  
  
  # Application definition
  
  INSTALLED_APPS = [
      'website.apps.WebsiteConfig',
      'django.contrib.admin',
      'django.contrib.auth',
      'django.contrib.contenttypes',
      'django.contrib.sessions',
      'django.contrib.messages',
      'django.contrib.staticfiles',
  
  ]
  .
  .
  .
  continued
  </code></pre>