DJANGO后端服务启动报错及解决
1.报错信息
[2025-09-05 17:08:54 +0800] [23438] [INFO] Worker exiting (pid: 23438)
[2025-09-05 17:08:54 +0800] [23440] [ERROR] Exception in worker process
Traceback (most recent call last):File "/www/SOP/lib64/python3.11/site-packages/gunicorn/arbiter.py", line 609, in spawn_workerworker.init_process()File "/www/SOP/lib64/python3.11/site-packages/uvicorn_worker/_workers.py", line 97, in init_processsuper().init_process()File "/www/SOP/lib64/python3.11/site-packages/gunicorn/workers/base.py", line 134, in init_processself.load_wsgi()File "/www/SOP/lib64/python3.11/site-packages/gunicorn/workers/base.py", line 146, in load_wsgiself.wsgi = self.app.wsgi()^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/base.py", line 67, in wsgiself.callable = self.load()^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/wsgiapp.py", line 58, in loadreturn self.load_wsgiapp()^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/wsgiapp.py", line 48, in load_wsgiappreturn util.import_app(self.app_uri)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/util.py", line 371, in import_appmod = importlib.import_module(module)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "/usr/lib64/python3.11/importlib/__init__.py", line 126, in import_modulereturn _bootstrap._gcd_import(name[level:], package, level)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "<frozen importlib._bootstrap>", line 1204, in _gcd_importFile "<frozen importlib._bootstrap>", line 1176, in _find_and_loadFile "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlockedFile "<frozen importlib._bootstrap>", line 690, in _load_unlockedFile "<frozen importlib._bootstrap_external>", line 940, in exec_moduleFile "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removedFile "/www/SOP/AwaySop/asgi.py", line 21, in <module>django_asgi_app = get_asgi_application()^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/django/core/asgi.py", line 12, in get_asgi_applicationdjango.setup(set_prefix=False)File "/www/SOP/lib64/python3.11/site-packages/django/__init__.py", line 19, in setupconfigure_logging(settings.LOGGING_CONFIG, settings.LOGGING)^^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/django/conf/__init__.py", line 102, in __getattr__self._setup(name)File "/www/SOP/lib64/python3.11/site-packages/django/conf/__init__.py", line 82, in _setupraise ImproperlyConfigured(
django.core.exceptions.ImproperlyConfigured: Requested setting LOGGING_CONFIG, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
[2025-09-05 17:08:54 +0800] [23440] [INFO] Worker exiting (pid: 23440)
[2025-09-05 17:08:54 +0800] [23430] [ERROR] Worker (pid:23438) exited with code 3
[2025-09-05 17:08:54 +0800] [23430] [ERROR] Worker (pid:23439) exited with code 3
[root@localhost SOP]# export DJANGO_SETTINGS_MODULE=AwaySop.settings
[root@localhost SOP]# export PYTHONPATH=/www/SOP:$PYTHONPATH
[root@localhost SOP]# python -c "import django; django.setup(); print('Django配置成功')"
Traceback (most recent call last):File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'django'
[root@localhost SOP]# source bin/activate
(SOP) [root@localhost SOP]# python -c "import django; django.setup(); print('Django配置成功')"
Traceback (most recent call last):File "<string>", line 1, in <module>File "/www/SOP/lib64/python3.11/site-packages/django/__init__.py", line 24, in setupapps.populate(settings.INSTALLED_APPS)File "/www/SOP/lib64/python3.11/site-packages/django/apps/registry.py", line 124, in populateapp_config.ready()File "/www/SOP/SopTask/apps.py", line 13, in ready
(SOP) [root@localhost SOP]# cat log/gunicorn.log
[2025-09-05 17:08:53 +0800] [23430] [INFO] Starting gunicorn 22.0.0
[2025-09-05 17:08:54 +0800] [23430] [INFO] Listening at: http://0.0.0.0:8003 (23430)
[2025-09-05 17:08:54 +0800] [23430] [INFO] Using worker: AwaySop.worker.SopWorker
[2025-09-05 17:08:54 +0800] [23438] [INFO] Booting worker with pid: 23438
[2025-09-05 17:08:54 +0800] [23439] [INFO] Booting worker with pid: 23439
[2025-09-05 17:08:54 +0800] [23440] [INFO] Booting worker with pid: 23440
[2025-09-05 17:08:54 +0800] [23439] [ERROR] Exception in worker process
Traceback (most recent call last):File "/www/SOP/lib64/python3.11/site-packages/gunicorn/arbiter.py", line 609, in spawn_workerworker.init_process()File "/www/SOP/lib64/python3.11/site-packages/uvicorn_worker/_workers.py", line 97, in init_processsuper().init_process()File "/www/SOP/lib64/python3.11/site-packages/gunicorn/workers/base.py", line 134, in init_processself.load_wsgi()File "/www/SOP/lib64/python3.11/site-packages/gunicorn/workers/base.py", line 146, in load_wsgiself.wsgi = self.app.wsgi()^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/base.py", line 67, in wsgiself.callable = self.load()^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/wsgiapp.py", line 58, in loadreturn self.load_wsgiapp()^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/wsgiapp.py", line 48, in load_wsgiappreturn util.import_app(self.app_uri)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/util.py", line 371, in import_appmod = importlib.import_module(module)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "/usr/lib64/python3.11/importlib/__init__.py", line 126, in import_modulereturn _bootstrap._gcd_import(name[level:], package, level)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "<frozen importlib._bootstrap>", line 1204, in _gcd_importFile "<frozen importlib._bootstrap>", line 1176, in _find_and_loadFile "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlockedFile "<frozen importlib._bootstrap>", line 690, in _load_unlockedFile "<frozen importlib._bootstrap_external>", line 940, in exec_moduleFile "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removedFile "/www/SOP/AwaySop/asgi.py", line 21, in <module>django_asgi_app = get_asgi_application()^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/django/core/asgi.py", line 12, in get_asgi_applicationdjango.setup(set_prefix=False)File "/www/SOP/lib64/python3.11/site-packages/django/__init__.py", line 19, in setupconfigure_logging(settings.LOGGING_CONFIG, settings.LOGGING)^^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/django/conf/__init__.py", line 102, in __getattr__self._setup(name)File "/www/SOP/lib64/python3.11/site-packages/django/conf/__init__.py", line 82, in _setupraise ImproperlyConfigured(
django.core.exceptions.ImproperlyConfigured: Requested setting LOGGING_CONFIG, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
[2025-09-05 17:08:54 +0800] [23439] [INFO] Worker exiting (pid: 23439)
[2025-09-05 17:08:54 +0800] [23438] [ERROR] Exception in worker process
Traceback (most recent call last):File "/www/SOP/lib64/python3.11/site-packages/gunicorn/arbiter.py", line 609, in spawn_workerworker.init_process()File "/www/SOP/lib64/python3.11/site-packages/uvicorn_worker/_workers.py", line 97, in init_processsuper().init_process()File "/www/SOP/lib64/python3.11/site-packages/gunicorn/workers/base.py", line 134, in init_processself.load_wsgi()File "/www/SOP/lib64/python3.11/site-packages/gunicorn/workers/base.py", line 146, in load_wsgiself.wsgi = self.app.wsgi()^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/base.py", line 67, in wsgiself.callable = self.load()^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/wsgiapp.py", line 58, in loadreturn self.load_wsgiapp()^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/wsgiapp.py", line 48, in load_wsgiappreturn util.import_app(self.app_uri)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/util.py", line 371, in import_appmod = importlib.import_module(module)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "/usr/lib64/python3.11/importlib/__init__.py", line 126, in import_modulereturn _bootstrap._gcd_import(name[level:], package, level)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "<frozen importlib._bootstrap>", line 1204, in _gcd_importFile "<frozen importlib._bootstrap>", line 1176, in _find_and_loadFile "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlockedFile "<frozen importlib._bootstrap>", line 690, in _load_unlockedFile "<frozen importlib._bootstrap_external>", line 940, in exec_moduleFile "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removedFile "/www/SOP/AwaySop/asgi.py", line 21, in <module>django_asgi_app = get_asgi_application()^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/django/core/asgi.py", line 12, in get_asgi_applicationdjango.setup(set_prefix=False)File "/www/SOP/lib64/python3.11/site-packages/django/__init__.py", line 19, in setupconfigure_logging(settings.LOGGING_CONFIG, settings.LOGGING)^^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/django/conf/__init__.py", line 102, in __getattr__self._setup(name)File "/www/SOP/lib64/python3.11/site-packages/django/conf/__init__.py", line 82, in _setupraise ImproperlyConfigured(
django.core.exceptions.ImproperlyConfigured: Requested setting LOGGING_CONFIG, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
[2025-09-05 17:08:54 +0800] [23438] [INFO] Worker exiting (pid: 23438)
[2025-09-05 17:08:54 +0800] [23440] [ERROR] Exception in worker process
Traceback (most recent call last):File "/www/SOP/lib64/python3.11/site-packages/gunicorn/arbiter.py", line 609, in spawn_workerworker.init_process()File "/www/SOP/lib64/python3.11/site-packages/uvicorn_worker/_workers.py", line 97, in init_processsuper().init_process()File "/www/SOP/lib64/python3.11/site-packages/gunicorn/workers/base.py", line 134, in init_processself.load_wsgi()File "/www/SOP/lib64/python3.11/site-packages/gunicorn/workers/base.py", line 146, in load_wsgiself.wsgi = self.app.wsgi()^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/base.py", line 67, in wsgiself.callable = self.load()^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/wsgiapp.py", line 58, in loadreturn self.load_wsgiapp()^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/app/wsgiapp.py", line 48, in load_wsgiappreturn util.import_app(self.app_uri)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/gunicorn/util.py", line 371, in import_appmod = importlib.import_module(module)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "/usr/lib64/python3.11/importlib/__init__.py", line 126, in import_modulereturn _bootstrap._gcd_import(name[level:], package, level)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "<frozen importlib._bootstrap>", line 1204, in _gcd_importFile "<frozen importlib._bootstrap>", line 1176, in _find_and_loadFile "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlockedFile "<frozen importlib._bootstrap>", line 690, in _load_unlockedFile "<frozen importlib._bootstrap_external>", line 940, in exec_moduleFile "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removedFile "/www/SOP/AwaySop/asgi.py", line 21, in <module>django_asgi_app = get_asgi_application()^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/django/core/asgi.py", line 12, in get_asgi_applicationdjango.setup(set_prefix=False)File "/www/SOP/lib64/python3.11/site-packages/django/__init__.py", line 19, in setupconfigure_logging(settings.LOGGING_CONFIG, settings.LOGGING)^^^^^^^^^^^^^^^^^^^^^^^File "/www/SOP/lib64/python3.11/site-packages/django/conf/__init__.py", line 102, in __getattr__self._setup(name)File "/www/SOP/lib64/python3.11/site-packages/django/conf/__init__.py", line 82, in _setupraise ImproperlyConfigured(
django.core.exceptions.ImproperlyConfigured: Requested setting LOGGING_CONFIG, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
2.原因分析
注意信息提示:asgi文件内容报错
缺少必须的系统变量:
3.解决代码
开头添加
import os
import django
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'AwaySop.settings')
重新运行:
bash gstartup
浏览器访问成功