Điểm:1

Viết lại URL IIS 10 gây ra lỗi 404

lá cờ co
SBO

Tôi hiện đang mắc kẹt với các quy tắc viết lại của mình và tôi cần một số gợi ý về nó.

Đây là tình huống: Chúng tôi có hai trang web, một là website.com, trang còn lại là website-staging.com (chỉ là ví dụ ở đây ofc)

Trên website.com, đối với một số url, tôi muốn sử dụng quy tắc viết lại để truy cập trang web dàn dựng và hiển thị kết quả.

Đây là quy tắc trong tệp web.config:

<rule name="RewriteSearchQueries" patternSyntax="Wildcard" stopProcessing="true">
<match url="search?*" />
<action type="Rewrite" url="https://website-staging.com/{R:0}" logRewrittenUrl="true" />

Tôi đã làm bài kiểm tra mô hình, mọi thứ đều ổn. URL được sử dụng để viết lại đang hoạt động bình thường, tuy nhiên khi tôi truy cập website-staging.com/search?arg=1&blabla=2, tôi nhận được thông báo lỗi 404:

404 - Không tìm thấy tệp hoặc thư mục. Tài nguyên bạn đang tìm kiếm có thể đã bị xóa, tên của nó đã bị thay đổi hoặc tạm thời không khả dụng.

Tôi cũng đã cố gắng thực hiện hành động sau:

<action type="Rewrite" url="https://website-staging.com/search?{R:1}" logRewrittenUrl="true" />

Và nó cũng không hoạt động. Có manh mối nào không?

CHỈNH SỬA: Định tuyến yêu cầu ứng dụng được cài đặt, proxy được bật.

Lex Li avatar
lá cờ vn
Khi bật FRT, https://docs.microsoft.com/en-us/iis/extensions/url-rewrite-module/using-failed-request-tracing-to-trace-rewrite-rules bạn sẽ có thể tự giúp mình . Gợi ý: truy vấn không được xử lý trong thẻ `match`, vì vậy mẫu của bạn sẽ không hoạt động. Bạn nên sử dụng một điều kiện thay thế.Sử dụng công cụ tìm kiếm để tìm ví dụ về chuỗi truy vấn.
SBO avatar
lá cờ co
SBO
Cảm ơn, FRT Thật đã giúp, sẽ đăng câu trả lời :)
Điểm:0
lá cờ co
SBO

Vì vậy.. Sau khi cài đặt FRT theo lời khuyên của Lex Li, tôi thấy rằng không có kết quả phù hợp, do đó không thực hiện viết lại URL.

Tôi đã kiểm tra lại mô hình, mọi thứ đều ổn.

Cuối cùng, tôi quyết định thay thế ký tự đại diện bằng regex và.. Tadam! Nó đã làm việc. Vì một lý do mà tôi không thể giải thích, mẫu ký tự đại diện không được phát hiện chính xác, mặc dù công cụ kiểm tra mẫu vẫn ổn, trong khi sử dụng biểu thức chính quy đã thực hiện thủ thuật này một cách hoàn hảo.

Vì vậy, nếu bạn đang đối mặt với một vấn đề tương tự, hãy regex mọi cách!

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