2016-04-07 5 views
1

Я добавил в конфигурационный файл следующее.Не удается заставить httpErrors работать

<system.webServer> 
    ... 
    <httpErrors errorMode="Custom" 
       existingResponse="Replace" 
       defaultResponseMode="ExecuteURL"> 
    <clear/> 
    <error statusCode="404" 
      responseMode="ExecuteURL" 
      path="http://google.se" /> 
    </httpErrors> 
</system.webServer> 

Однако, похоже, что я по-прежнему получаю страницу по умолчанию с желтым фоном и трассировкой стека. Я пробовал комментировать фильтр для обработки ошибок и добавления/удаления пользовательских ошибок в system.web. (Я пытаюсь использовать httpErrors, как это предложено в this great article.)

Что мне не хватает? Что еще я могу сделать, чтобы справиться с этим?

ответ

2

Вы можете сделать это на уровне ASP.NET подобное:

<system.web> 
    ... 
    <customErrors mode="On"> 
     <error statusCode="404" redirect="http://www.google.se"/> 
    </customErrors> 
</system.web> 

Если вы действительно хотите, чтобы точка его на уровне IIS, вы можете как то:

<system.webServer> 
    <httpErrors errorMode="Custom" existingResponse="Replace"> 
     <remove statusCode="404"/> 
     <error statusCode="404" path="http://www.google.fr" responseMode="Redirect"/> 
    </httpErrors> 
</system.webServer> 

Если вы хотите для перенаправления на абсолютный URL-адрес вы должны установить атрибут «responseMode» в «Redirect», «ExecuteURL» - для контента с динамическим обслуживанием, от MSDN.

+0

Решает ли ваша проблема? –

+0

Не уверен, что это произошло - это было довольно давно. Однако, зная, что я упрямый, если это не поможет, я буду спрашивать о последующих действиях, поэтому я заключаю, что это помогло, и я стал неаккуратным или стрессовым, поэтому не было никакого напоминания. Извиняюсь за это. Тебе следовало подтолкнуть меня сильнее. Ответы даются только по одной причине - принимаются или принимаются. Прости. И * you.Future = новый Anno {happy = true} *, чтобы вы улыбались. –

Смежные вопросы