2014-09-29 4 views
0

У меня есть «тестовый» веб-сайт в IIS и суб-приложении под-1 внутри него.Относительные URL-адреса в подпрограмме на сайте IIS

Когда я запрашиваю domain.com/sub1, IIS успешно обрабатывает подзапрос.

Некоторые URL-адреса являются относительными, и, когда у меня есть что-то подобное в коде/компоненте/тесте, запросы приложений следуют URL-адресу domain.com/component/test вместо domain.com/sub1/component/test.

Что мне нужно изменить, чтобы сделать относительные URL-адреса действительными.

ответ

0

в вашем коде, используйте @Url.Content("~/") или <% =Url.Content("~/") %>, чтобы добраться до относительного корня приложения.

Или, иногда, вы можете уйти с префиксом с ~/, но как правило, только с JS и CSS файлов в макете

Примечание: @ для просмотра бритвы двигателя и <% %> для просмотра двигателя Aspx , вы не указали, который вы использовали

EDIT: (на основе комментарий от OP)

CSS должны быть относительными из каталога ваш CSS размещен, вы можете использовать ../ пройти каталоги. Для вашего JS вы можете редактировать эти файлы? Я хотел бы определить переменную SITE_ROOT (прежде всего JS-файлы) в макете, а затем ссылаться на эту переменную внутри файлов JS

пример: var SITE_ROOT = '@Url.Content("~/")';

затем префикс ваших вызовов в файле JS с SITE_ROOT + '/relative_url'

+0

These проблемы из файлов JS/CSS. URL-адрес POST жестко закодирован в JS. Все URL-адреса начинаются с «/» –

+0

Я отредактировал свой ответ на основе вашего комментария –

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