html - 根据目录使用 2 个不同的 404 页面

标签 html apache .htaccess

我正在尝试使用 2 个单独的 404 页面,具体取决于用户当前所在的目录。我认为您可以使用目录中的 .htaccess 文件来执行此操作,但它不起作用。这可能吗?

示例:用户正在 www.domain.com 中查看文档。该目录应使用 number1_404.html。

示例 2:用户正在查看 www.domain.com/other_directory 中的文档。该目录应使用 number2_404.html。

我完全不确定如何为此编写规则,但这是我现在所拥有的,但它不起作用。

.htaccess <--- in the root folder /httpdocs
ErrorDocument 404 /root_404.php

.htaccess <---- in the subdirectory /httpdocs/subdirectory
ErrorDocument 404 /subdirectory/subdirectory_404.php

也许我不明白这一切是如何运作的,所以请原谅我的无知。

最佳答案

使用 2 个不同的 .htaccess 文件。一个在根 404 的根目录中,一个在子目录中也查看重写条件,可能有一个条件你可以应用它类似于其他语言中的 if-else。也许你可以做一些类似 if root show this, else show that 等价的事情。我不确定,因为我不需要使用多个 404。

另一种可能是,因为您使用 PHP 是通过 php 检测您是在根目录中还是在一个或多个级别上。如果是这种情况,您 include()require() 无论您的选择是什么,您都希望为该条件显示 404。然而,在全局范围内,htaccess 文件将是一个 404 页面,这将引入其他两个页面之一(如果您有需要,可以引入更多页面)。

关于html - 根据目录使用 2 个不同的 404 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12481974/

相关文章:

java - 展开高度的高度

html - div高度取决于伪代码的内容div

linux - 将 Linux 服务器配置为 Web 服务器

在 .htaccess 中使用 FilesMatch 和 Headers 所需的 Apache 模块

security - 如何使用 .htaccess 规则将所有 HTTP 请求重定向到 HTTPS?

.htaccess - 将链接重定向到正确的目录

php - 如何修复具有相同名称的多个表单?

html - 带有响应图像的全高列

php - “授权” header 与请求一起发送,但在 apache_request_headers() 中丢失

php - 仅一个文件的 RewriteRule