回答
收藏
分享
举报
NGINX变量求值
提问于2021-03-27 21:09

浏览 3.9k

NGINX中的某些指令正在使用ngx_http_compile_complex_value(&ccv)来编译变量,并使用ngx_http_complex_value()来在运行时获取指令参数的原始值。 同样,其他一些指令也使用ngx_http_script_compile(&sc)和ngx_http_script_run()实现相同的目标。

请问这两者之间的区别是什么?

已修改于2023-02-27 02:11



写下您的回答
发表回答
全部回答(2)

按点赞数排序

按时间排序

自问自答了。看了一下代码,感觉ngx_http_compile_complex_value和ngx_http_script_compile是两套实现,前者对后者进行了封装,使用起来应该更方便。

比如,如果有一个指令需要支持复杂变量,使用ngx_http_compile_complex_value只需要定义一个ngx_http_complex_value_t变量就可以。但是使用ngx_http_script_compile需要定义flushes,lengths,variables一系列数组。。


赞同

1

回复举报

回答于2021-04-01 21:32



回复皮皮鲁
回复

有同类疑问。。。

赞同

0

回复举报

回答于2021-03-30 10:10



回复阿尔巴
回复
提问者
皮皮鲁
这家伙很懒还未留下介绍~
85
文章
2
问答
45
粉丝
相关问答

浏览器在HTTP请求中携带时,表示希望代理服务器、负载均衡在使用自己的缓存时,先向上游服务直接验证,获得304响应码后再返回客户端。

点赞 0
浏览 3.6k

ip白名单跟include指令内容没关系,include是把其他配置文件内容包含进来。通常nginx配置文件会有多个,nginx.conf之外配置文件通常分别定义不同虚拟服务器的配置

点赞 0
浏览 3.2k