Nginx Rewrite(重写地址)
例:
location ^~ /api/ {
rewrite ^/api/(.*)$ /$1 break;
proxy_pass http://localhost:8080;
}
^:匹配输入字符串的起始位置
$:匹配输入字符串的结束位置
location
^~:表示普通字符匹配。使用前缀匹配。如果匹配成功,则不再匹配其它location。
rewrite ^/api/(.*)$ /$1 break会将请求路径中的/api/前缀移除,例如/api/user重写为/user。break标志表示重写后停止后续rewrite规则处理
proxy_pass http://localhost:8080将处理后的请求转发到本地8080端口服务。由于rewrite使用了break,proxy_pass会接收重写后的路径(如/user),而不会保留原始/api/前缀。若proxy_pass末尾带/(如http://localhost:8080/),则路径会被完全替换为/$1
浙公网安备 33010602011771号