【发布时间】:2013-03-10 07:15:07
【问题描述】:
我是Nginx的新手,我的需求差不多是这样的:
我在我的服务之前将 Nginx 设置为前端服务,这就像一个反向代理服务器,而我需要根据传入的客户标头处理任何传入的 http 请求。我知道我可以设置如下反向代理:
server {
listen 18080;
server_name localhost;
location /myService {
proxy_pass http://host:port/myservice/;
}
}
我还知道使用 $http_my_header 从传入请求中获取传入的“my-header”,我需要的是从请求中检索“my-header”,然后调用另一个远程 Web 服务,例如“http://authserver: authport/authorize”在请求标头中带有“my-header”,authserver 将授权“my-header”并回复基于 JSON 的响应,例如:
{
valid: "true"/"false";
}
然后我需要根据响应“有效”值来决定 proxy_pass 请求到 nginx 后面的 myservice 或直接拒绝 403 http 响应。
【问题讨论】:
标签: nginx