Tôi đang dùng thử nginx lần đầu tiên và tôi đang chạy nó cục bộ. Tôi đã có thể nâng cấp các dịch vụ của mình nhưng tôi có một câu hỏi khó hiểu vì tôi chạy Microservice và trong quá trình nâng cấp, tôi muốn có thể chỉ chặn một dịch vụ cụ thể.
Bây giờ, mỗi dịch vụ có một đường dẫn, vd
\api\v1\ví
\api\v1\thẻ
vấn đề tôi gặp phải là cả đường dẫn ví và thẻ đều nằm trong cùng một dịch vụ.
Nếu tôi có các đường dẫn khác nhau, tôi có phải sao chép hoặc có cách nào để tôi có thể làm cho nó hoạt động tốt hơn không?
Đây là tập tin conf của tôi
công_nhân 4;
sự kiện { worker_connections 1024; }
http {
người phục vụ {
nghe 80;
bộ ký tự utf-8;
vị trí ~ ^/api/v1/người dùng {
viết lại ^/api/v1/user/(.*) /$1 break;
proxy_pass http://user-service:3001;
proxy_http_version 1.1;
proxy_set_header Nâng cấp $http_upgrade;
proxy_set_header Kết nối 'Nâng cấp';
proxy_set_header Máy chủ lưu trữ $host;
proxy_cache_bypass $http_upgrade;
}
vị trí /api/v1/wallet/ {
# viết lại /api/v1/wallet/(.*) /$1 break;
proxy_pass http://wallet-service:3007/api/v1/wallet/;
proxy_http_version 1.1;
proxy_set_header Nâng cấp $http_upgrade;
proxy_set_header Kết nối 'Nâng cấp';
proxy_set_header Máy chủ lưu trữ $host;
proxy_cache_bypass $http_upgrade;
}
vị trí /api/v1/thẻ/ {
# viết lại /api/v1/wallet/(.*) /$1 break;
proxy_pass http://wallet-service:3007/api/v1/card/;
proxy_http_version 1.1;
proxy_set_header Nâng cấp $http_upgrade;
proxy_set_header Kết nối 'Nâng cấp';
proxy_set_header Máy chủ lưu trữ $host;
proxy_cache_bypass $http_upgrade;
}
}
}