代理請求報頭動作
OpenResty Edge 提供了以下動作來修改代理到上游的請求報頭。
設定代理報頭
這個頁面規則中:
- 使用了動作
設定代理報頭
; - 啟用了代理,方便檢查檢查動作執行結果。
設定代理報頭
要求兩個引數 報頭
以及 值
。其中 值
的型別可以選擇 字元傳
和 內建變數
。
內建變數
有以下取值:(請以您使用的 Edge Admin 為準,不同版本的支援情況不同)
- 客戶端地址
- 客戶端埠
- 主機名
- 協議
- 請求報頭
X-Forwarded-For
中的第一個地址 - 請求報頭
X-Forwarded-For
中的最後一個地址 - 請求頭
- 系統主機名
- SSL 客戶端主題專有名稱
- SSL 客戶端簽發商專有名稱
- SSL 客戶端驗證結果
請求示例:
$ curl http://test.com/anything
{
...
"headers": {
"X-Proxy-Header": "127.0.0.1"
},
...
}
本示例中使用了內建變數 客戶端地址
來設定代理頭 X-Proxy-Header
。
設定代理主機
這個動作的作用是設定代理主機名,只有一個引數 主機名
。
請求示例:
$ curl http://test.com/anything
{
...
"headers": {
"Host": "openresty-edge.com",
},
...
}
可以看到,主機名從 test.com
被修改了成 openresty-edge.com
。
代理頭追加值
這個動作會在指定的報頭中追加值,以英文逗號(,)分割。它的的引數與 類似,參考 進行設定即可。
請求示例:
curl http://test.com/anything -H 'X-Route-Trace: 127.0.0.1'
{
...
"headers": {
"X-Route-Trace": "127.0.0.1,1.2.3.4"
},
...
}
可以看到,請求的 X-Route-Trace 報頭的原始值是 127.0.0.1
,被修改成了 127.0.0.1,1.2.3.4
,
其中,1.2.3.4
是頁面規則中指定的值。