2010-11-05 112 views
2

首先,我並沒有如此接近和熟悉IIS7,只是將其用於重定向到weblogic應用程序。 我使用的後端weblogic應用程序有一個登錄頁面作爲初始頁面。當我通過IIS7調用頁面時,它會將我的請求重定向到weblogic,並且我會看到登錄頁面。當我嘗試用正確的密碼登錄&用戶名對everthing進行正常我可以使用該系統沒有任何問題。但是,當我嘗試使用錯誤的憑據登錄時,IIS向我顯示了defaul 403權限被拒絕的頁面,而不是我的weblogic應用程序登錄錯誤頁面。 當我將問題挖掘出來時,我發現weblogic用403消息回覆了我的錯誤登錄嘗試,其中已經包含weblogic應用程序登錄失敗頁面,當IIS看到403消息時,它會丟棄其中的頁面,並僅向我發送純粹的403響應(我已經刪除了IIS的花哨403錯誤消息,以及)帶有403錯誤的IIS7頁面重定向

有沒有什麼辦法可以讓iis7重定向所有請求並在沒有處理它的情況下進行響應?遺憾的是,更改weblogic應用程序的回覆消息代碼毫無疑問。

回答

0

我不確定,因爲我沒有使用IIS。

<httpErrors> 
    <remove statusCode="404" subStatusCode="-1" /> 
    <error statusCode="404" prefixLanguageFilePath="" path="/index.php" responseMode="ExecuteURL" /> 
    <remove statusCode="403" subStatusCode="-1" /> 
    <error statusCode="403" prefixLanguageFilePath="" path="/weblogic/login.php" responseMode="ExecuteURL" /> 
</httpErrors> 
+0

在你對web.config的建議後,我調查了一下,發現頁面http://www.iis.net/ConfigReference/system.webServer/httpErrors參數existingResponse適用於我:)謝謝。 – goktan 2010-11-05 14:05:27

2

我們必須在那裏通過IIS ISAPI篩選器發回了WebLogic 7捕捉錯誤反應的一個問題:如果要修改的路徑在web.config文件如下:這可能是不夠的。例如,如果將錯誤的登錄憑據放入登錄頁面。 IIS正在返回一個自定義的403錯誤頁面,而不是通過weblogic返回我們的應用程序登錄頁面。

這是由於IIS 7處理自定義錯誤代碼併發回它自己的錯誤頁面。看到http://www.iis.net/ConfigReference/system.webServer/httpErrors

更多信息爲了糾正這種行爲,我們必須設置在web.config的網站httpErrors部分 existingResponse =「直通」。