在 lua 中设置服务器端口的环境变量

Environment variable to set server port in lua

如何使用 lua 通过环境变量设置端口?

目前我的设置设置 $port 到 lua:

server {

  set_by_lua_block $port {
    return os.getenv("PORT")

  listen       $port;

  }

但是,这样做会给我这个错误:

nginx: [emerg] host not found in "$port" of the "listen" directive in /usr/local/openresty/nginx/conf/nginx.conf:93

我是不是做错了什么?我该怎么做?

答案已在评论中发布,但并未发布,因此我会这样做以结束此问题。

Listen doesn't accept variables. You have to generate valid config before starting nginx. Use any template tool (bash script, ansible, whatever else)

如果您正在寻找模板引擎,我推荐 ERB。请参阅我对另一个问题的回答