HttpContext.Current.Request.Url.Authority дает неправильные имена органов - PullRequest
1 голос
/ 06 июня 2011

У меня есть два производственных веб-сервера, которые сбалансированы по нагрузке и находятся в DMZ. У меня есть форма, которая должна открыть другую форму на основе определенных критериев. Один из серверов работает нормально и дает полное имя администратора, то есть "host.n.n.com". Другой сервер prod возвращает только «host», и в результате страница не может быть найдена. Вот код, который я использую:

urlString.Append(url.Scheme);
urlString.Append("://");
urlString.Append(url.Authority);
urlString.Append("/somedir/anotherdir/");
urlString.Append(formName + ".aspx");

сервер 1 (рабочий) возвращается с http://host.n.n.com/somedir/anotherdir/formName.aspx сервер 2 (сломался) возвращается с http://host/somedir/anotherdir/formName.aspx

Похоже, что IIS настроен одинаково на обоих серверах.

Заранее спасибо за любую помощь

1 Ответ

2 голосов
/ 07 июня 2011

Свойство Authority происходит от самого запроса.

Если запрос от пользователя сделан из «host.nncom» или «host» Это то, что свойство будет отражать.Вы можете проверить это локально, используя http://localhost/yoursite/page.aspx против http://yourcomputername/yoursite/page.aspx. На той же странице будут возвращены 'localhost` и' yourcomputername 'соответственно.

Почему бы не сделать URL-адрес параметром конфигурации?

...