You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行python manage.py runserver报KeyError:'AWS_ACCESS_KEY_ID'如何解决

报错原因

这个报错和os.py的代码本身无关,是你Django项目的settings.py第164行代码尝试直接从系统环境变量中读取AWS_ACCESS_KEY_ID值,但当前运行环境没有配置该环境变量,才触发了KeyError异常。

解决方法

分两种场景选择对应方案:

场景1:本地开发不需要使用AWS相关功能

直接修改settings.py里的对应配置行,用os.environ.get()替代直接取值的写法,取不到对应变量时会返回默认值不会抛错:

# 原写法会直接抛错
# AWS_ACCESS_KEY_ID = os.environ['AWS_ACCESS_KEY_ID']
# 修改后写法
AWS_ACCESS_KEY_ID = os.environ.get('AWS_ACCESS_KEY_ID', '')
# 关联的AWS_SECRET_ACCESS_KEY等其他AWS配置也同步修改为get写法即可

场景2:本地开发确实需要使用AWS服务

有两种配置环境变量的方式可选:

方式1:临时在当前终端配置(关闭终端后配置失效)

  • 如果你用的是Windows cmd终端,依次执行以下命令再启动项目:
set AWS_ACCESS_KEY_ID=替换为你的实际AWS访问密钥ID
set AWS_SECRET_ACCESS_KEY=替换为你的实际AWS秘密访问密钥
python manage.py runserver
  • 如果你用的是Windows PowerShell终端,依次执行以下命令再启动项目:
$env:AWS_ACCESS_KEY_ID="替换为你的实际AWS访问密钥ID"
$env:AWS_SECRET_ACCESS_KEY="替换为你的实际AWS秘密访问密钥"
python manage.py runserver

方式2:用.env文件持久化管理环境变量(推荐本地开发使用)

  1. 安装环境变量管理工具:
pip install python-dotenv
  1. 在项目根目录(和manage.py文件同级)新建名为.env的文件,写入以下内容:
AWS_ACCESS_KEY_ID=替换为你的实际AWS访问密钥ID
AWS_SECRET_ACCESS_KEY=替换为你的实际AWS秘密访问密钥
  1. 在settings.py文件的最开头添加两行代码,启动时自动读取.env文件的配置:
from dotenv import load_dotenv
load_dotenv()

注意:.env文件包含敏感密钥信息,一定要添加到项目的.gitignore文件中,避免误提交到公共代码仓库泄露权限。

内容的提问来源于stack exchange,提问作者thripurasai Gandham

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 21:36:04