Express 设置代理
为 Express 设置代理
当在代理服务器之后运行 Express 时,请将应用变量 trust proxy
设置(使用 app.set())为下述列表中的一项。
如果没有设置应用变量 trust proxy
,应用将不会运行,除非 trust proxy
设置正确,否则应用会误将代理服务器的 IP 地址注册为客户端 IP 地址。
类型 | 值 |
---|---|
Boolean | 如果为 如果为 |
IP 地址 | IP 地址、子网或 IP 地址数组和可信的子网。下面是预配置的子网列表。
使用如下方式设置 IP 地址: 当指定地址时,IP 地址或子网从地址确定过程中被除去,离应用服务器最近的非受信 IP 地址被当作客户端 IP 地址。 |
Number | 将代理服务器前第 |
Function | 定制实现,只有在您知道自己在干什么时才能这样做。
|
设置 trust proxy
为非假值会带来两个重要变化:
-
反向代理可能设置
X-Forwarded-Proto
来告诉应用使用 https 或简单的 http 协议。请参考 req.protocol。
trust proxy
设置由 proxy-addr 软件包实现,请参考其文档了解更多信息。