Điểm:1

Nginx viết lại và trả về can thiệp vào khối vị trí khác

lá cờ cn

Tôi có cấu hình sau trong nginx để chuyển hướng trong một trường hợp nhất định.

vị trí /prefix-someurl {
   nếu (điều kiện) {
            trả về 301 $scheme://$host/xyz.html;
   }
   proxy_pass someValue;
}

và trong một khối khác có một số quy tắc viết lại như thế này

địa điểm /someurl {
   nếu (điều kiện) {
            viết lại ^(.*)abc(.*)$ $1test/abc$2 break;               
            viết lại ^(.*)someurl/$(.*) $1someurl/test/index.html$2;

   }
   giá trị proxy_pass;
}

Cấu hình trên hoạt động như dự định. Tuy nhiên, nếu sau này tôi thực hiện sửa đổi này;

địa điểm /someurl {
   nếu (điều kiện) {
            trả về 301 $scheme://$host/xyz.html;
   }
   nếu (điều kiện) {
            viết lại ^(.*)abc(.*)$ $1test/abc$2 break;               
            viết lại ^(.*)someurl/$(.*) $1someurl/test/index.html$2;

   }
   giá trị proxy_pass;
}

Tôi gặp quá nhiều lỗi chuyển hướng khi truy cập /prefix-someurl.Nếu tôi sửa đổi /someurl đến phần sau, lỗi sẽ biến mất;

địa điểm /someurl {
  nếu (điều kiện) {
        trả về 301 $scheme://$host/xyz.html;
  }    
  giá trị proxy_pass;
}

Tôi không thể hiểu tại sao sửa đổi /someurl có ảnh hưởng đến /prefix-someurl. Hay tôi đang thiếu thứ gì đó liên quan đến đánh giá viết lại nginx. Cái nhìn sâu sắc về điều này sẽ được đánh giá cao.

Richard Smith avatar
lá cờ jp
Bạn cần xác định từng bước trong vòng lặp. Sử dụng `curl -I` để kiểm tra các chuyển hướng riêng lẻ. Ngoài ra, hãy bật [`rewrite_log`](http://nginx.org/en/docs/http/ngx_http_rewrite_module.html#rewrite_log) để nhận chẩn đoán từ công cụ viết lại.
lá cờ us
Bạn rất có thể tìm thấy câu trả lời tại https://www.nginx.com/resources/wiki/start/topics/depth/ifisevil/. Thay vì `if`, bạn nên sử dụng `map` và sử dụng một chiến lược khác cho các điều kiện của mình.

Đă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.