2
我知道你可以這樣做:Web Farm框架和MVC 3:如何在Action方法上需要https。
#if !DEBUG
[RequireHttps] //apply to this action only
#endif
如果你在哪裏「控制器」服務器接收外部SSL 443的請求,使用密碼進行解密,然後將它轉發到主/輔服務器使用Web農場框架http 80(沒有ssl?)
在這個環境中,我嘗試了[RequireHttps]屬性,但它在Firefox中響應「頁面沒有正確重定向」。 Firefox已經檢測到服務器以永不完成的方式重定向該地址的請求。它認識到它不是SSL,但是因爲它剝離了SSL,所以MVC永遠不會看到SSL屬性。
如何重寫某些操作方法以在Web場中的MVC 3中使用https?你怎麼能用[RequireHttps]
來做到這一點,或者你是否必須挑選你的網站中需要ssl和「URL重寫」的每一個URL呢?
編輯:
我改變了控制器識別端口443的流量,並轉發給HTTPS Web場。我以爲我可以逃脫只在控制器上加載SSL證書,但他們也需要加載主要和次要(或僅)。
問題是Web服務器場在將SSL傳遞到主Web服務器之前將其刪除。 Request.IsSecureConnection表示爲false。 –
我設置WWF將SSL請求轉發到第二臺服務器上的SSL端口。現在它可以工作。 –
所以在正確設置控制器時,您的建議也起作用(減去屬性上的括號)。 –