Firefox + Asp.NET + Windows Authentication = нет фоновых изображений css? - PullRequest
2 голосов
/ 15 февраля 2012

Кажется, я обнаружил очень специфическую ошибку в Firefox, и мне интересно, может ли кто-нибудь помочь.

У меня есть веб-сайт ASP.NET 3.5, использующий проверку подлинности Windows.

В большинстве браузеров это работает нормально, но при просмотре с Firefox (v10.0.1) фоновые изображения css не загружаются. То есть css вот так перестает работать:

.hasabackground
{
    background: url(images/something.png) no-repeat top left;
}

Кажется, что-то особенное связано с аутентификацией Windows, потому что, когда я использую те же изображения разметки / css / background без аутентификации Windows, в Firefox все работает нормально.

(я бы опубликовал пример страницы, но это сложно сделать, потому что ошибка возникает только при аутентификации Windows)

Есть идеи?

Ответы [ 3 ]

1 голос
/ 15 февраля 2012

Похоже, что вашему изображению может потребоваться аутентификация, чтобы браузер мог его загрузить. Попробуйте добавить это в ваш web.config:

<location path="images">
    <system.web>
        <authorization>
            <allow users="*" />
        </authorization>
    </system.web>
</location>

Я не могу объяснить, почему это проблема только Firefox ... может быть, другие браузеры отображают кэшированное изображение?

Вы можете проверить это, попытавшись получить доступ к изображению напрямую, введя URL-адрес в браузере:

http://mywebserver/images/something.png
1 голос
/ 15 февраля 2012

Насколько я помню для Firefox 3.x, он не передает ваши учетные данные Windows по умолчанию. (Я не уверен насчет последних версий) Возможно, вам придется добавить свой URI в список доверенных сайтов, в зависимости от того, на каком домене находятся изображения:

  1. В Firefox введите about: config в адресной строке, затем
  2. Тип network.automatic-ntlm-auth.trusted-uris . Введите URL вашего сайта, например http://yoursite.com

Надеюсь, это поможет:)

1 голос
/ 15 февраля 2012

Я предполагаю, что путь к images / something.png недоступен или не предоставлен клиенту.
Попробуйте проверить html-трафик (с помощью fiddler, firebug, ...), чтобы увидеть, какой ответ вы получите.
возможно, что запрос что-то.png будет перенаправлен на домашнюю страницу или файл png не обслуживается вашим веб-сервером.

...