这个文档是小编在curl官网上使用谷歌翻译翻译的,详细信息看官网
libcurl中环境变量理解
描述
如果我们设置一些环境变量,那这些环境变量将如何设置和理解。下面是一个环境变量的列表教我们如何理解和设置环境变量。另外,命令行工具支持一种和这个不一样的环境变量。
[方案]_proxy
当libcurl使用特定的URL传输时。首先会提取方案部分,并且检查相应的环境变量是否有给定的代理集,例如: "https://example.com" 将使用 "http_proxy" 变量, "ftp://example.com" 将使用"ftp_proxy" 变量 。
这些代理变量也会检查他的大写版本,除了只使用小写的“http_proxy”。另请注意,某些系统实际上对环境变量是不区分大小写的,因此“HTTP_PROXY”仍然可以工作......
ALL_PROXY
这个变量是给所有URLs设置一个代理,这个代理不依赖方案 。如果设置了方案特性变量,则这个设置将会被覆盖
CURL_SSL_BACKEND
当libcurl构建支持多个SSL后端的时候,libcurl第一次使用就需要选择一个特定的后端。如果程序没有使用 libcurl 进行选择,则将使用该变量的选择。设置一个非内置替代名称将使 libcurl 保持默认值。
SSL 后端名称(不区分大小写):bearssl、gnutls、gskit、mbedtls、nss、openssl、rustls、schannel、secure-transport、wolfssl
HOME
当使用 netrc 功能 (CURLOPT_NETRC),时,选中的变量可作为查找的”当前“主目录的主要方法,这种方法可能存在netrc文件
USERPROFILE
当使用 netrc 功能 (CURLOPT_NETRC),时,检查此变量作为查找“当前”主目录的辅助方法(仅在 Windows 上) 这种方法可能存在netrc文件
LOGNAME
如果未设置 NTLMUSER,则在调用 ntlm-wb 工具时使用的用户名。
NO_PROXY
这与CURLOPT_NOPROXY选项具有相同的功能:它为没有设置proxy的 libcurl 提供了一个以逗号分隔的主机名模式列表。
NTLMUSER
调用 ntlm-wb 工具时使用的用户名。
SSLKEYLOGFILE
当设置并且 libcurl运行支持此功能的 SSL 后端时,libcurl 会将 SSL 机密保存到给定的文件名中。使用这些 SSLsecrets,其他工具(例如 Wireshark)可以解密 SSL 通信并分析/查看流量。
SSL_DIR
当libcurl在TLS特性上运行NSS后端时,这个变量将用于查找NSS PKI非内置数据库的路径。
USER
如果没有设置NTLMUSTR和LOGNAME没有设置的话,则在调用 ntlm-wb 工具时使用的用户名。
调试变量
只有当 libcurl 构建为“启用调试”时,才会识别和使用这些变量,这在生产使用的库的时候是不能用的。
CURL_GETHOSTNAME
仅调试变量。
CURL_FORCETIME
仅调试变量。
CURL_ENTROPY
Debug-only variable. Used to set a fixed faked value to use instead of a proper random number so that functions in libcurl that are otherwise getting random outputs can be tested for what they generate.
仅调试变量。使用一个随机数用于测试 ,替换libcurl 中需要产生随机输出的函数所要生成的内容。
CURL_TRACE
仅调试变量。用于调试 lib/ldap 实现。
CURL_NTLM_WB_FILE
仅调试变量。用于设置 ntlm-wb 可执行文件的调试版本。
CURL_OPENLDAP_TRACE
仅调试变量。用于调试 lib/openldap.c 实现。