2016-10-10 3 views
2

В настоящее время у меня есть внутренний сервер serv который имеет приложение app.ASP.Net MVC 5 проблема с перенаправлением

Он эксплуатируется MVC 5 и имеет 2 страницы Account/Logon, который сопоставляется с контроллером и действием.

Orders/Display И (опять же контроллер/действие)

Для того, чтобы интернет-пользователей во внешнем мире, чтобы увидеть меня есть хост-сервер host под управлением IIS. Он отображает хост-адреса для внутреннего приложения, как так

хозяина /Account/Logon ->serv/app/Account/Logon

Так что в основном все, после того, как host/... получает изменено на serv/app/....

Моя проблема в том, если я RedirectToAction("Display","Orders"); (Есть много эти переадресации, потому что есть много контроллеров/комбинаций действий.

Внутренний сервер захватывает часть хоста, а также позволяет использовать «приложение» в порядке для перехода на следующую страницу o г маршрут

Так, host/app/Orders/Display Моя проблема заключается в том, что хост IIS отображает этот URL в host/app/app/Orders/Display , потому что это то, что это отображение устанавливается делать. всегда добавлять «приложение»

Как я могу решить эту проблему? Есть ли способ для serv сделать относительное сопоставление? В порядке слов он видит только оригинал host/Account/Logon и так далее переключатель будет host/Orders/Display?

ответ

1

Используйте Redirect() вместо RedirectToAction() и перейдите по ссылке.

+0

Я надеялся на ASP ServerVariable, что я мог бы изменить , так что AppDomainAppVirtualPath не попадает в путь – DenisL

+0

Html.BeginForm также имел ту же проблему. В этом случае мне, вероятно, пришлось кодировать HTML напрямую с помощью настраиваемого URL-адреса. Что мы в итоге сделали, это создать новый веб-сайт, подложив приложение под него с привязкой к порту 81 и изменив сопоставление, чтобы перейти в порт 81 и верхнюю часть IIS. Таким образом, «приложение» будет отображаться только один раз на пути. – DenisL

Смежные вопросы