根据环境变量配置uWSGI:DEBUG条件判断不生效问题
uWSGI DEBUG环境变量判断失效排查及修复
问题根源
你当前uWSGI配置里的if-opt = $(DEBUG)=true采用了错误的环境变量引用格式,不符合uWSGI的语法规范,导致条件判断不生效,所以print语句无法执行。
修复方案
uWSGI中引用环境变量并做条件判断,有两种正确的写法:
方式1:使用环境变量插值格式
[uwsgi] if-opt = ${DEBUG}=true print = Inside if condition endif =
方式2:用env:前缀明确指定检查环境变量
[uwsgi] if-opt = env:DEBUG=true print = Inside if condition endif =
额外验证步骤
- 先进入Pod内部执行
echo $DEBUG,确认环境变量确实被设置为true。 - 可以在uWSGI配置开头添加全局打印语句,验证环境变量是否能被uWSGI读取:
启动uWSGI后查看日志,先确认[uwsgi] print = DEBUG value is ${DEBUG} if-opt = ${DEBUG}=true print = Inside if condition endif =DEBUG value is true是否输出,再检查条件内的打印语句是否执行。
内容的提问来源于stack exchange,提问作者GM_1
相关产品推荐
相关产品推荐

