2011-12-20 67 views
8

Tôi đang sử dụng [RequireHttps] để buộc người dùng duyệt các trang cụ thể chỉ trên https. Điều này làm việc tuyệt vời nhưng nó có một vấn đề. Khi người dùng điều hướng đến một trang khác, nó vẫn có https. Tôi muốn duyệt qua https chỉ trong vài trang. Cách chuyển hướng người dùng từ Https sang http? Có thể sử dụng phương pháp RedirectToAction() không?Chuyển hướng ASP.NET MVC3 từ https sang http

+0

Câu hỏi liên quan áp dụng cho MVC 2: http://stackoverflow.com/questions/2560615/redirect-away-from-https-with-asp-net-mvc-app –

Trả lời

3

Câu hỏi hay hơn là tại sao bạn muốn người dùng quay trở lại http khi tất cả công việc khó khăn của việc lắc tay như đã được thực hiện để chi phí sử dụng https trên http gần như không tồn tại.

Có xem xét này question

Nhưng trả lời câu hỏi của bạn, không có thực hiện trong MVC để làm điều đó, bạn sẽ phải làm điều đó cho mình.

Hãy xem số điện thoại question này, mô tả cách thực hiện những gì bạn muốn.

+11

Lý do chính đáng để chuyển hướng từ HTTPS sang HTTP là bởi vì trang sẽ nhúng nội dung của bên thứ ba mà bạn không có quyền kiểm soát và bạn không biết liệu trang đó có được bảo mật hay không. Nhúng nội dung không an toàn trên một trang được bảo mật có thể khiến nội dung đó bị hỏng. – jmacinnes

0

Đôi khi đây là một điều ác cần thiết. Chúng ta phải chuyển hướng đến một trang HTTP từ bên trong ứng dụng HTTPS của chúng ta bởi vì Máy in Epson ePOS mà chúng ta đang nói đến không có điểm cuối HTTPS để trưng ra kịch bản của nó thông qua.

Có giải pháp cho việc này trong Chrome post v38 khi chặn nội dung hỗn hợp được thực thi nhưng Safari của iOS9 chúng tôi phải chuyển hướng các trang cụ thể được phân phát qua HTTP và sau đó để chúng chuyển hướng trở lại HTTPS cho phần còn lại của trang web.

Một lần nữa, nó không tuyệt vời, nhưng đôi khi bạn cần phải thực dụng về những điều này.

Các vấn đề liên quan