fastapi: 修改.env后是否需要重启服务?

一,开发环境(Development)

开发环境(Development)

如果你在本地开发,并启用了自动重载功能:

FastAPI: 使用 uvicorn main:app --reload 启动时,Uvicorn 默认只监控 .py 文件。
修改 .env 文件通常
不会触发自动重启,
此时你需要
手动重启终端,或者在 .env 修改后顺便保存一下任意 .py 文件来骗过热重载机制。

 

二,生产环境(Production)

在生产环境中,你必须手动重启服务。原因如下:

生产环境的服务器(如 Gunicorn、Uvicorn 且未加 --reload)会将代码和环境参数一次性加载到内存中运行。

无论你使用的是 python-dotenv 库 还是 FastAPI 的 Pydantic Settings,
它们都只在
应用初始化(启动时)读取一次 .env 文件。

总结:

在生产环境(Production)中,必须手动重启框架;
在开发环境(Development)中,若开启了热重载(Reload/Debug)模式,框架会感知变化并自动重启应用。

 

posted @ 2026-07-27 13:50  刘宏缔的架构森林  阅读(35)  评论(0)    收藏  举报