Пользователи, не прошедшие проверку подлинности, не могут видеть изображения на веб-сайте

Когда я запускаю свой веб-сайт в режиме отладки в Visual Studio, все выглядит отлично, и все изображения на странице отображаются нормально. Но как только я развертываю с моего веб-сайта на веб-сервер IIS7 (сомневаюсь, что другие версии будут иметь какое-либо значение, но вы никогда не узнаете), тогда пользователи не могут видеть изображения на сайте, пока не войдут в систему.

Веб-сайт является сайтом asp.net MVC и я новичок в MVC, хотя у меня большой опыт работы с формами asp.net. Кажется, что только аутентифицированные пользователи имеют доступ к папке изображений, и в моем web.config есть раздел авторизации, в котором говорится, что только администраторы могут получить доступ к сайту, поэтому как мне сделать так, чтобы все пользователи, прошедшие аутентификацию или иным образом, могли просматривать изображения?

- Обновление -

Я попытался ввести предложенный блок конфигурации, который, судя по всему, имеет смысл, но, похоже, это не имело значения. В приведенном ниже примере есть Content / Images для пути, но до этого я пробовал только Content, так как все в нем доступно для доступа. Я также попытался установить для параметра allowOverride значение false, что тоже, похоже, не имело значения.

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

- Обновление 2 - аутентифицирован или иным образом может просматривать изображения?

- Обновление -

Я попытался вставить предложенный блок конфигурации, который, судя по всему, имеет смысл, но, похоже, это не имело значения. В приведенном ниже примере есть Content / Images для пути, но до этого я пробовал только Content, так как все в нем доступно для доступа. Я также попытался установить для параметра allowOverride значение false, что тоже, похоже, не имело значения.

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

- Обновление 2 - аутентифицирован или иным образом может просматривать изображения?

- Обновление -

Я попытался вставить предложенный блок конфигурации, который, судя по всему, имеет смысл, но, похоже, это не имело значения. В приведенном ниже примере есть Content / Images для пути, но до этого я пробовал только Content, так как все в нем доступно для доступа. Я также попытался установить для параметра allowOverride значение false, что тоже, похоже, не имело значения.

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

- Обновление 2 - Забавно то, что я даже не вижу никаких явных запрещающих записей в моем web.config, просто разрешение для администратора, и когда я вошел в IIS 7 и использовал пользовательский интерфейс, чтобы разрешить всем пользователям доступ к каталогу Content, этого не произошло. также покажите любые отрицания в списке. Но опять же, этот проект отлично работает, когда я просто отлаживаю его со своего персонального компьютера, и только после его развертывания у меня возникают проблемы ...

<authorization>
    <allow roles="admin" />
</authorization>
<authentication mode="Forms">
    <forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>
8
задан Peter 7 November 2010 в 15:53
поделиться