1. 程式人生 > 其它 >nginx api介面代理配置細節

nginx api介面代理配置細節

技術標籤:linuxnginx

server {
        listen 80;
        server_name localhost:80;
        location / {
            # proxy_set_header Host $host:$server_port;
            # proxy_set_header X-Real-Ip $remote_addr;
            # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            root   /usr/share/nginx/html;  # 定義網站根目錄,可以是相對路徑也可以是絕對路徑。
            index  index.html index.htm;  #定義站點的預設頁。
        }
        location /api/ {
            add_header 'Access-Control-Allow-Origin' '*';
            add_header 'Access-Control-Allow-Methods' 'POST,GET,OPTIONS';
            add_header 'Access-Control-Allow-Headers' 'Authorization'; #跨域設定

            proxy_pass http://127.0.0.1:7001; #//轉發介面 (/api/的請求會轉發至http://127.0.0.1:7001/)

            # proxy_set_header Host $host:$server_port;
        }
}

倒數第二行代理的配置,後面如果有 斜槓 ‘/’ ,例如:proxy_passhttp://127.0.0.1:7001/;

轉發介面會把 api去掉,會導致404 ,找不到介面

去掉斜槓 “/ ”, 則轉發介面會帶 '/api/'。

這是一個很容易忽視的 轉發配置小細節!!