mod_wsgi (pid=145, process=’dc_ui’, application=»): загрузка скрипта WSGI ‘/app/data_cube_ui/wsgi.py ‘

#python #django #apache2 #mod-wsgi

#python #django #apache2 #mod-wsgi

Вопрос:

Я пытаюсь развернуть приложение django и получаю 500 внутренних ошибок сервера. Файл error.log показывает:

 [mpm_event:notice] [pid 142:tid 139995416574912] AH00489: Apache/2.4.29 (Ubuntu) mod_wsgi/4.5.17 Python/3.6 configured -- resuming normal operations
[core:notice] [pid 142:tid 139995416574912] AH00094: Command line: '/usr/sbin/apache2'
[wsgi:info] [pid 145:tid 139995416574912] mod_wsgi (pid=145): Attach interpreter ''.
[wsgi:info] [pid 145:tid 139995416574912] mod_wsgi (pid=145): Adding '/app' to path.
[wsgi:info] [pid 145:tid 139995298592512] [remote 172.18.0.1:41624] mod_wsgi (pid=145, process='dc_ui', application=''): Loading WSGI script '/app/data_cube_ui/wsgi.py'.
mod_wsgi (pid=145): Target WSGI script '/app/data_cube_ui/wsgi.py' cannot be loaded as Python module.
mod_wsgi (pid=145): Exception occurred processing WSGI script '/app/data_cube_ui/wsgi.py'.
Traceback (most recent call last):
File "/usr/lib/python3.6/logging/config.py", line 565, in configure
handler = self.configure_handler(handlers[name])
File "/usr/lib/python3.6/logging/config.py", line 738, in configure_handler
result = factory(**kwargs)
File "/usr/lib/python3.6/logging/__init__.py", line 1032, in __init__
StreamHandler.__init__(self, self._open())
File "/usr/lib/python3.6/logging/__init__.py", line 1061, in _open
return open(self.baseFilename, self.mode, encoding=self.encoding)
PermissionError: [Errno 13] Permission denied: '/app/log/ODC_UI.log'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/app/data_cube_ui/wsgi.py", line 42, in <module>
application = get_wsgi_application()
File "/app/datacube_env/lib/python3.6/site-packages/django/core/wsgi.py", line 13, in get_wsgi_application[Thu Dec 24 17:33:53.891302 2020] [wsgi:error] [pid 145:tid 139995298592512] [remote 172.18.0.1:41624]     django.setup(set_prefix=False)
File "/app/datacube_env/lib/python3.6/site-packages/django/__init__.py", line 22, in setup
configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
File "/app/datacube_env/lib/python3.6/site-packages/django/utils/log.py", line 75, in configure_logging
logging_config_func(logging_settings)
File "/usr/lib/python3.6/logging/config.py", line 802, in dictConfig
dictConfigClass(config).configure()
File "/usr/lib/python3.6/logging/config.py", line 573, in configure
'%r: %s' % (name, e))
ValueError: Unable to configure handler 'file': [Errno 13] Permission denied: '/app/log/ODC_UI.log'
AH01382: Request header read timeout
 

Я использую WSL2 ubuntu 20.04, python 3.6 и docker 20.10.
Мой wsgi.py файл является:

 import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "data_cube_ui.settings")
import tempfile
os.environ['MPLCONFIGDIR'] = tempfile.mkdtemp()
import matplotlib
application = get_wsgi_application()
 

Комментарии:

1. там ваш первый намек Permission denied , проверьте, есть ли у вас разрешение на запись и редактирование файла на сервере

2. Спасибо. Это решается, когда я запускаю sudo chmod -R 777 /path/to/app