我有一个非常简单的需求,但发现在 nginx 中很难实现
如果您看到位置指令,我会看到很多冗余。如何使用正则表达式和匹配。
server {
listen 80;
location /api/a-service/ {
proxy_pass http://a-service:8080;
}
location /api/b-service/ {
proxy_pass http://b-service:8080;
}
location /api/b-service/ {
proxy_pass http://c-service:8080;
}
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
}
类似这样的 - 但它不起作用
server {
listen 80;
location ~ /api/([a-z\-]+)/ {
proxy_pass http://$1:8080;
}
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
}