Điểm:2

nginx định tuyến khác nhau cho / và /*

lá cờ us

tôi muốn định tuyến / đến một chiếc vớ/(.*) đến b.sock.

tôi đã thử

    địa điểm / {
        proxy_pass http://unix:/tmp/a.sock;
        proxy_read_timeout 30;
        proxy_connect_timeout 30;
        proxy_redirect tắt;
        proxy_set_header Máy chủ lưu trữ $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
    vị trí ~ /(.*) {
        proxy_pass http://unix:/tmp/b.sock;
        proxy_read_timeout 30;
        proxy_connect_timeout 30;
        proxy_redirect tắt;
        proxy_set_header Máy chủ lưu trữ $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

với thứ tự khác nhau quá.

Điều này có thể đạt được với nginx không, nếu vậy thì bằng cách nào?

Ý kiến ​​của tôi là, theo tài liệu, bất cứ thứ gì kết thúc bằng a / giả sử một ký tự đại diện sau / và tuyến đường đơn giản không có biểu thức chính quy được ưu tiên.

Về cơ bản phụ trợ trên b.sock có một định nghĩa tuyến đường của /:kỳ hạn hoặc /{kỳ hạn} tùy thuộc vào lib định tuyến bạn sử dụng, nhưng không có trình xử lý cho /. Có lẽ bạn đang nghĩ "vì vậy hãy thêm một trình xử lý cho / và gọi nó là một ngày". Tôi có thể làm điều đó, nhưng đó là một cách giải quyết. Tôi muốn một chiếc vớ giải quyết /.

Vì vậy, một lần nữa, điều này có thể được thực hiện với nginx không và bằng cách nào?

Richard Smith avatar
lá cờ jp
Cụm từ thông dụng của bạn `/(.*)` cũng khớp với `/`.
Gerard H. Pille avatar
lá cờ in
Bạn đã thử thay thế "vị trí /" bằng "vị trí ~ ^/$" chưa?
Điểm:4
lá cờ cn

Sử dụng đối sánh chính xác cho trang chủ, ví dụ: vị trí = / { ⦠}. Các địa điểm / { ⦠} sẽ áp dụng cho phần còn lại của các trang.

Kết hợp chính xác (có dấu bằng) được ưu tiên hơn vị trí tiền tố (không có dấu bằng).

Paul avatar
lá cờ cn
IIRC, thứ tự là `=` trong đó `nginx` dừng xử lý ngay lập tức, sau đó là regex, cuối cùng là khớp. Tôi nghĩ cấu hình ban đầu trong câu hỏi luôn khớp với biểu thức chính quy.

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