В нашей настройке есть два разных веб-сайта в настройке IIS 7, которые указывают на один и тот же физический путь. Один с привязкой http://websitename.domain.com/ (виртуальный корень ~ есть /)
и второй в https://webserver.domain.com/ID пользователя / websitename (поэтому виртуальный корень ~ это / userid / websitename). Мы используем второй для безопасных аспектов каждого веб-сайта.
Это вызывает проблему с загрузкой файлов Webresources.axd для сгенерированного css и javascript для инструментария AJAX.net.
Есть ли способ изменить путь к этим сгенерированным файлам ресурсов. Или как-то установить виртуальный корневой путь для каждого приложения.





Я нашел одно решение, используя метод Render () для замены путей URL-адресов на правильный. В этом сообщение на форуме есть информация об этом решении. Мне придется изменить его, чтобы проверить Request.Url, чтобы узнать, из какого домена исходит запрос страницы.
protected override void Render(HtmlTextWriter writer)
{
try
{
StringBuilder renderedOutput = new StringBuilder();
StringWriter strWriter = new StringWriter(renderedOutput);
HtmlTextWriter tWriter = new HtmlTextWriter(strWriter);
base.Render(tWriter);
//this string is to be searched for src = "/" mce_src = "/" and replace it with correct src = "./" mce_src = "./".
string s = renderedOutput.ToString();
s = Regex.Replace(s, "(?<=<img[^>]*)(src=\\\"/)", "src=\"./", RegexOptions.IgnoreCase);
s = Regex.Replace(s, "(?<=<script[^>]*)(src=\\\"/)", "src=\"./", RegexOptions.IgnoreCase);
s = Regex.Replace(s, "(?<=<a[^>]*)(href=\\\"/)", "href=\"./", RegexOptions.IgnoreCase);
writer.Write(s);
}
catch
{
}
}
}