小编Bla*_*axy的帖子

Nginx 日志请求和响应 API 代理

我有一个配置将我所有的本地 API 调用(来自客户端,带有 apikey 标头)重定向example.com到远程 API 服务器distant-api-server.com:8000)。

upstream api-server {
    server distant-api-server.com:8000;
}

server {
    listen 80;
    index index.html;
    server_name example.com;

    location ~ /api/(?<path>.*) {                                               

    if ($request_method = OPTIONS ) {                                       
        add_header 'Access-Control-Allow-Origin' "$http_origin";            
        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';     
        add_header 'Access-Control-Allow-Headers' 'apikey';                 
        return 200;                                                         
    }                                                                       

    if ($api_route = "error"){return 501;}                                  

        error_page 501 /501_apikey.html;                                    

        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT';
        add_header 'Access-Control-Allow-Headers' 'apikey';
        proxy_set_header X-Real-IP $remote_addr;                            
        proxy_set_header X-NginX-Proxy true;                                
        proxy_pass http://$api_route/$path$is_args$args;                    
        proxy_set_header X-Forwarded-For $remote_addr;                      
        proxy_set_header X-Forwarded-Host $remote_addr; …
Run Code Online (Sandbox Code Playgroud)

nginx

11
推荐指数
1
解决办法
4万
查看次数

标签 统计

nginx ×1