PythonAnywhere部署DRF报Rest_API_Framework.settings模块缺失
错误根因
ModuleNotFoundError: No module named 'Rest_API_Framework.settings'报错的核心诱因是WSGI配置文件的项目路径写法错误:
- 配置中定义的项目路径
home/art1x/Rest_API_Framework是相对路径,缺少Linux系统根目录标识开头的/,WSGI进程运行时无法正确解析到项目实际存放位置,导致项目根目录没有被加入Python模块搜索路径,自然无法导入对应settings模块。 - 核查过的Django内部
DJANGO_SETTINGS_MODULE环境变量配置不存在问题。
修复步骤
- 打开
/var/www/art1x_pythonanywhere_com_wsgi.py文件,将path变量的值修改为绝对路径,补全开头的斜杠:
path = '/home/art1x/Rest_API_Framework'
- 保存文件后,到PythonAnywhere的Web管理面板点击对应站点的Reload按钮重载服务,报错即可解决。
修改完成后的完整WSGI配置参考:
import os import sys path = '/home/art1x/Rest_API_Framework' if path not in sys.path: sys.path.insert(0, path) os.environ['DJANGO_SETTINGS_MODULE'] = 'Rest_API_Framework.settings' from django.core.wsgi import get_wsgi_application application = get_wsgi_application()
内容的提问来源于stack exchange,提问作者Artemii Khristich
相关产品推荐
相关产品推荐

