Почему мой полный URL-адрес запроса доменного имени преобразуется в URL-адрес запроса IP-адреса веб-сервером Cassini? - PullRequest
0 голосов
/ 20 апреля 2009

У меня есть веб-приложение, которое зависит от клиента браузера, сохраняющего FQDN , чтобы оно работало, но происходит то, что в нескольких браузерах я вижу, как URL-адрес преобразуется в IP-адрес URL (содержащий правильный IP-адрес), который изменяется при перенаправлении с веб-сервера.

Веб-сервером, на котором размещен ресурс, является Cassini, а класс HttpRequest Свойство Url возвращает IP-адрес в URL-адресе вместо полного доменного имени.

Любые предложения о том, как изменить это поведение?

Ответы [ 3 ]

2 голосов
/ 20 апреля 2009

Возможно, это неправильная конфигурация вашего веб-сервера. В apache (например) можно установить каноническое имя хоста, которое будет использоваться при выполнении определенных процедур перезаписи, используя директиву ServerName. Одним из распространенных является случай, когда веб-сервер добавляет косую черту в конце вашего URL ("http://example.com/path" →" http://192.168.1.1/path/").

Я рекомендую взглянуть на то, что происходит с завитком.

1 голос
/ 21 апреля 2009

Благодаря предоставленной полезной информации я смог отследить эту проблему до неполной реализации абстрактного класса HttpWorkerRequest .NET Framework как части реализации Cassini. Реализация Cassini не смогла переопределить GetServerName, и базовая реализация возвращала IP-адрес вместо имени домена.

1 голос
/ 20 апреля 2009

Это не проблема DNS, это проблема конфигурации веб-сервера.

Да, DNS используется для преобразования части имени узла в URL в IP-адрес.

Однако этот IP-адрес никогда не появится на панели браузера , если веб-сервер не сообщит об этом, отправив перенаправление .

...