Điểm:1

Gửi các đối số có chọn lọc từ proxy Nginx đến ngược dòng thông qua proxy_pass

lá cờ sb

Tôi có proxy Nginx được định cấu hình cho máy chủ lưu trữ đối tượng Minio S3.

Tôi có thể xóa một số tham số truy vấn (nhiều hơn một agrs) khi tôi chuyển yêu cầu tới thượng nguồn (Minio) và giữ phần còn lại của các đối số không?

Ví dụ: đây là yêu cầu mà Nginx nhận được:

/my-private-bucket/my-image.jpeg?X-Amz-Algorithm=AWS4-HMAC-SHA256&w=320&X-Amz-Date=20211218T231908Z&h=200

Tôi cần chuyển đổi liên kết trên thành liên kết bên dưới (tức là loại bỏ các đối số phụ: w=320 và h=200) và sau đó sử dụng proxy_pass:

/my-private-bucket/my-image.jpeg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20211218T231908Z

Tất nhiên tôi có thể sử dụng nhiều câu lệnh IF trong khối vị trí: Đây là một mẫu hoặc cái này. nhưng tôi nghĩ nên có một cái gì đó hợp lý hơn. Một cái gì đó giống như sử dụng regex và sed trong bash:

tiếng vang [đã đề cập đến uri] | sed -E 's/&?[wh]=[0-9]*//g'

...hoặc thậm chí sử dụng khối bản đồ trong Nginx:

bản đồ $args $polish-args
{
    mặc định $args
    ~&?[wh]=[0-9]* ((thứ gì đó kỳ diệu))
}

Bất kỳ ý tưởng?

Điểm:0
lá cờ us

Nếu bạn có thể làm việc theo cách khác, nghĩa là chuyển một danh sách các tham số đã biết, bạn có thể sử dụng:

proxy_pass http://backend.example.com/path?param1=$arg_param1&param2=$arg_param2

Nếu thứ tự đối số của các phím bị bỏ luôn giống nhau, thì bạn có thể sử dụng bản đồ:

bản đồ $args $cleaned_args {
    mặc định $args;
    ^(.*)[?&]w=[0-9]+(.*)&h=[0-9]+(.*)$ $1$2$3;
    ^(.*)[?&]h=[0-9]+(.*)&w=[0-9]+(.*)$ $1$2$3;
}

Biểu thức chính quy nắm bắt mọi thứ trước đó &w hoặc ?w, sau đó mọi thứ trước &h và phần còn lại thành các nhóm chụp. Tùy chọn thứ hai thực hiện tương tự đối với thứ tự tham số ngược lại.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.