Всем здрасте! Есть єлектронный магазин, который крутится на ASP iis 6 windows 2003 r2. Бизнес-процесс стандартный — на платежный шлюз передаются данные о платеже, клиент вводит данные пластиковой карты, жмет оплатить, если успешно на страницу notify.aspx с параметрами отправляются данные о успешном платеже в ответ отправляется подтверждение платежа и адресс страницы на которую делается редирект. Замечу сразу что страница существует. владельцы платежнего шлюза подтверждают что редирект проходит нормально, типа response.redirect=
http://XXX/pay/success.aspx. В браузере клиент получает
http://XXX/pay/Default.aspx?aspxerrorpath=/pay/success.aspx. Если этот адресс подправить на
http://XXX/pay/success.aspx, то результат тот что надо. Почему при редиректе с платежного шлюза происходит искажение адреса?
Спасибо за ответы.
Во время редиректа у тебя происходит ошибка, вот система и перенаправляет тебя на error page.
Попробуй подписаться на оброботчик ошибок в global.asax, чтоб понять что же происходит, либо отключи custom errors в web.conif файле.
global.asax
void Application_Error(object sender, EventArgs e)
{
Exception exception = Server.GetLastError();
if (exception != null)
{
Log.Error("An unhandled exception occured", exception);
}
}
либо в web.config отключи кастом ероры.
<customErrors mode="
Off" defaultRedirect="ErrorPages/ErrorPage.aspx">
Взляни сюда тоже
http://stackoverflow.com/questions/267138/asp-net-aspxerrorpath-in-url.