Перенаправление страницы IIS7 с ошибкой 403 - PullRequest
3 голосов
/ 05 ноября 2010

Прежде всего, я не так близок и не знаком с IIS7 и использую его только для перенаправления в веблогическое приложение.Бэкэнд веблогическое приложение, которое я использую, имеет страницу входа в качестве начальной страницы.Когда я вызываю страницу через IIS7, она перенаправляет мои запросы в weblogic, и я вижу страницу входа.Когда я пытаюсь войти в систему с правильной парой пароля и имени пользователя, все идет хорошо, я могу использовать систему без проблем.Однако, когда я пытаюсь войти в систему с неверными учетными данными, IIS показывает мне страницу отказа в разрешении по умолчанию 403 вместо страницы ошибки входа в мои приложения weblogic.Когда я немного покопался в проблеме, я обнаружил, что weblogic отвечает на мою неверную попытку входа в систему сообщением 403, которое уже включает страницу неудачного входа в приложения weblogic, а когда IIS видит сообщение 403, он отбрасывает страницу и просто отправляет мне чистое 403ответ (я также удалил причудливое сообщение об ошибке IIS 403)

Есть ли способ, чтобы iis7 перенаправлял все запросы и ответы без обработки?Изменение кода ответного сообщения приложения weblogic, к сожалению, не подлежит обсуждению.

Ответы [ 2 ]

3 голосов
/ 10 января 2012

У нас была проблема, когда IIS 7 перехватывал ответы об ошибках, отправленные обратно через weblogic через фильтр ISAPI.Например, если вы указали неправильные данные для входа в систему на странице входа.IIS возвращал пользовательскую страницу ошибки 403 и не отправлял обратно страницу входа наших приложений в weblogic.

Это связано с тем, что IIS 7 обрабатывает пользовательские коды ошибок и отправляет свои собственные страницы ошибок.См. Дополнительную информацию на http://www.iis.net/ConfigReference/system.webServer/httpErrors

. Чтобы исправить это поведение, нам пришлось установить существующий Response = 'PassThrough' в разделе httpErrors web.config для веб-сайта.

0 голосов
/ 05 ноября 2010

Я не уверен, потому что я не использую 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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...