【发布时间】:2017-01-14 09:25:19
【问题描述】:
我有一个空域,希望在人们访问主页或任何其他 URL 时返回 404 错误。目前,当我进入域时,显示的是空目录。
我怎样才能做到这一点?
【问题讨论】:
标签: .htaccess server directory http-status-code-404 status
我有一个空域,希望在人们访问主页或任何其他 URL 时返回 404 错误。目前,当我进入域时,显示的是空目录。
我怎样才能做到这一点?
【问题讨论】:
标签: .htaccess server directory http-status-code-404 status
我正在显示空目录。
我假设您的意思是显示的是该目录的(Apache 生成的)索引(看起来是空的)。这是 Apache 的一个“特性”。要禁用目录索引,请在文档根目录的 .htaccess 文件顶部添加以下内容:
Options -Indexes
但是,这将导致在访问不包含 DirectoryIndex 文档的目录时提供 403 Forbidden(因为服务器生成的目录索引是“禁止的”)。要为所有请求显式返回 404,请在 .htaccess 文件中包含以下内容:
RewriteEngine On
RewriteRule ^ - [R=404]
这使用 mod_rewrite 来指示 Apache 为 所有 请求返回 404 状态(默认错误页面)。
但是,这确实假设您尚未定义自定义 404 ErrorDocument(否则您将收到由重写循环导致的 500 错误)。
【讨论】: