404 Ошибка пользовательской страницы работает для расширения.cfm, но не для.html?
Я пытаюсь перенаправить неверные страницы на страницу ошибки 404.
<httpErrors errorMode="Custom">
<remove statusCode="404"/>
<error statusCode="404" path="/404.cfm" responseMode="ExecuteURL"/>
</httpErrors>
Это мой код конфигурации web.config.
Он работает для www.abcxyz.com/invalid.cfm, но не для www.abcxyz.com/invalid.html и www.abcxyz.com/invalid/.
Показывает: соединение было сброшено.
2 ответа
Вы используете пользовательские страницы ошибок? "Редактировать параметры функции" в разделе"Страницы ошибок" в IIS для 404 должен иметь "Выполнить URL", указывающий на ваш 404.cfm
Вы можете посетить https://bugbase.adobe.com/index.cfm?event=bug&id=3488063
Несколько вещей для рассмотрения:
Если вы хотите, чтобы CF обрабатывал ошибки, вы выбрасываете 404 и указываете приложение где-то, что является распространенным (на этой "странице" должен быть cfheader с кодом состояния 404, и мы создаем шаблон, который предоставляет содержимое страницы, как объяснение пользователю, что они действительно на странице, которая не существует.
Он устанавливается в админке CF в настройках и является абсолютным путем.
http://helpx.adobe.com/coldfusion/kb/setting-cfml-based-missing-template.html
Затем, чтобы продолжить канал Анит. Вы должны указать своему веб-серверу, как IIS, чтобы ваше приложение работало с 404.
Например, если у вас есть IIS, вам нужно сделать что-то подобное в файле web.config.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<httpErrors existingResponse="PassThrough" />
</system.webServer>
</configuration>
И вы можете найти этот ТАКИЙ разговор здесь.
Я надеюсь, что это приведет вас на правильный путь... Удачи.