Что не так с моим приложением MVC ?! (500 на содержание и скрипты) - PullRequest
1 голос
/ 10 сентября 2009

Для чего-либо в папках Scripts или Content моего приложения ASP.NET MVC я получаю следующую ошибку:

Невозможно отобразить страницу, поскольку произошла внутренняя ошибка сервера

Это ответ полностью (исключая заголовки) - ничего больше. Я размещаю это на GoDaddy, и раньше у меня не было проблем с этим приложением. Что я сделал, чтобы испортить это ?! Работа в течение 4 часов сна не помогает делу ...

Ответы [ 7 ]

4 голосов
/ 11 сентября 2009

Это было бы уместно здесь:

«Требуются значительные знания, чтобы понять степень своего невежества».

                                                  -Thomas Sowell

Поэтому, когда я пытался заставить Flash-компонент, настроенный на JavaScript, работать в моем веб-приложении, я добавил узел staticContent в свой web.config с mimeMap узел как дочерний:

<configuration>
    ...
    <system.webServer>
        ...
        <staticContent>
            <mimeMap fileExtension=".mp4" mimeType="video/mpeg" />
        </staticContent>
    </system.webServer>
</configuration>

Когда я закомментировал весь узел staticContent , все работало просто отлично. Я не знал, что добавление mimeMap здесь приведет к переопределению всех mimeMap s по умолчанию (указанных в ApplicationHost.config сервера), потому что, похоже, это именно то, что происходит ... Опять же, я просто догадываюсь - в любом случае, не очень легко понять.

Спасибо всем, кто откликнулся, я ценю это!

1 голос
/ 29 сентября 2015

У меня была такая же проблема при обновлении до новой версии IIS, хотя и с другим типом MIME. Как вы и догадались, я полагаю, что в новой версии уже зарегистрирован тип (или хост сделал это на уровне машины). Я решил это, поставив «удалить» перед «добавить» - весь мой контент начал появляться снова. Я думаю, что это предотвратит изменение конфигурации между dev и prod.

<staticContent>
    <remove fileExtensions=".mp4" />
    <mimeMap fileExtension=".mp4" mimeType="video/mp4" />
</staticContent>

Это было отредактировано, чтобы заменить видео / MPEG на видео / MP4. / mpeg все еще работал для меня, но, видимо, рекомендуется mp4.

1 голос
/ 10 сентября 2009

В файле web.config найдите раздел customErrors и измените режим на Выкл.

<customErrors mode="Off">
</customErrors>

Изменение, которое даст вам более описательную ошибку.

0 голосов
/ 10 сентября 2009

Загрузите отладчик маршрута Фила Хаака , затем попробуйте перейти к одному из сценариев. Возможно, вы ловите их на своих маршрутах.

0 голосов
/ 10 сентября 2009

Хм, у вас есть контроль над IIS на этом хостинге? Может быть, они имеют мешающее отображение. Это случилось с нами раньше с сайтом minder.

0 голосов
/ 10 сентября 2009

Возможно, вы могли бы попробовать поставить

routes.IgnoreRoute("Scripts");
routes.IgnoreRoute("Content");

в вашем реестре маршрутов?

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

<location path="public">
    <system.web>
    <authorization>
        <allow users="*"/>
        </authorization>
    </system.web>
</location> 
0 голосов
/ 10 сентября 2009

Вы можете отключить Простые сообщения об ошибках?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...