本文演示从环境变量读取数据库密码。
这是路由脚本:
debug=2
log_stderror=yes
children=1
fork=no
loadmodule "pv.so"
alias="test.com"
loadmodule "sl.so"
loadmodule "corex.so"
loadmodule "ctl.so"
loadmodule "kex.so"
modparamx("pv", "shvset", "dburl=s:mysql://kamailio:$env(DB_PASS)@localhost/kamailio")
loadmodule "db_mysql.so"
loadmodule "permissions.so"
modparamx("permissions", "db_url", "$shv(dburl)")request_route {
sl_send_reply("200", "OK");
exit;
}
`mysql -ukamailio -pkamailiorw kamailio`, 成功。
`export DB_PASS='kamailiorw'`,设置好环境变量。
启动 kamailio。
运行 `kamcmd pv.shvGet dburl`,得到下面的结果:
{
name: dburl
type: string
value: mysql://kamailio:kamailiorw@localhost/kamailio
}