首先,我不是那么接近并熟悉IIS7并仅将其用于重定向到weblogic应用程序。 我使用的后端weblogic应用程序有一个登录页面作为初始页面。当我通过IIS7调用页面时,它将我的请求重定向到weblogic,我看到登录页面。当我尝试使用正确的密码和用户名对登录时,我可以毫无问题地使用系统。但是,当我尝试使用错误的凭据登录时,IIS向我显示默认的403权限被拒绝页面而不是我的weblogic应用程序登录错误页面。 当我把问题挖到一点点时,我发现weblogic用403消息回复了我的错误登录尝试,其中已经包含weblogic应用程序登录失败页面,当IIS看到403消息时,它丢弃了其中的页面,只是发送给我纯粹的403响应(我已经删除了IIS的fancy 403错误消息)
有没有办法iis7重定向所有请求和重新定向而不处理它?不幸的是,更改weblogic应用程序的回复消息代码是不可能的。
答案 0 :(得分:3)
我们遇到了一个问题,即IIS 7正在捕获weblogic通过ISAPI过滤器发回的错误响应。例如,如果您将错误的登录凭据放入登录页面。 IIS正在返回自定义403错误页面,而不是在weblogic中发回我们的应用程序登录页面。
这是由于IIS 7处理自定义错误代码并发回自己的错误页面。请在http://www.iis.net/ConfigReference/system.webServer/httpErrors
查看更多信息为了纠正这种行为,我们不得不设置 existingResponse ='直通'在网站的web.config的httpErrors部分。
答案 1 :(得分:0)
我不确定因为我不使用IIS。如果要修改web.config文件中的路径,可能就足够了,如下所示:
<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>