TYPO3 如何使用正确的状态代码在 404 上呈现页面

TYPO3 how to render a Page on 404 with correct status code

我们正在使用: 打字错误3 8.7.27 RealUrl 2.5.0

以下场景 - 用户输入我们网站中不存在的 link - 因此我们期望呈现 404 页面的行为 - 我们设法实现了这一点,但我们没有正确的状态代码,因为我们在安装工具中使用了简单的重定向:

[FE][pageNotFound_handling] = "REDIRECT:/404" 
[FE][pageNotFound_handling_statheader] = "HTTP/1.0 404 Not Found"

我们还使用我们的 404 页面来处理 cHash 比较错误,但这只是旁注。

所以发生的情况是用户从错误的地方请求数据 url,我们发送正确的 404,然后重定向到某个页面。

首先我们如何直接呈现页面,url 应该保持不变,我们只用 404 文本信息呈现整个 TYPO3 页面(没有静态文件)。

你应该改用这个:

[FE][pageNotFound_handling] = "/404"

这将指示 TYPO3 在给定 "URL" 下载页面并输出其内容以及预期的 404 状态代码。请注意,可能需要在此处使用绝对 URL。

来自DefaultConfigurationDescription.php

pageNotFound_handling

... String: Static HTML file to show (reads content and outputs with correct headers), e.g. "notfound.html" or "http://www.example.org/errors/notfound.html"

您可以删除 pageNotFound_handling_statheader 选项,因为它默认为 404。