Apache htaccess return 404 代码,即使页面存在而不使用重写 mod:
Apache htaccess return 404 code even if page exists without using rewrite mod:
为了保护我的服务器免受机器人攻击,我想 return 如果某些文件被请求时出现 404 错误页面,即使它们存在但不使用重写 mod。有可能吗?
您可以使用 mod_alias Redirect
(或 RedirectMatch
)指令。
例如:
Redirect 404 /file1.html
Redirect 404 /file2.html
这实际上不会像在外部 3xx 重定向中那样触发“重定向”。如果请求其中一个 URL(无论该文件是否存在),它会发送规定的 404 响应。
参考:
如果这些 URL 有模式,则使用 RedirectMatch
指令代替,它与正则表达式匹配,而不是使用简单的 prefix-matching。例如,要为对 /secret
子目录(以及其中的所有文件)的所有请求提供 404,则使用以下内容:
RedirectMatch 404 ^/secret($|/)
要自定义 404 响应,请使用 ErrorDocument
指令:
ErrorDocument 404 /error-docs/404.html
为了保护我的服务器免受机器人攻击,我想 return 如果某些文件被请求时出现 404 错误页面,即使它们存在但不使用重写 mod。有可能吗?
您可以使用 mod_alias Redirect
(或 RedirectMatch
)指令。
例如:
Redirect 404 /file1.html
Redirect 404 /file2.html
这实际上不会像在外部 3xx 重定向中那样触发“重定向”。如果请求其中一个 URL(无论该文件是否存在),它会发送规定的 404 响应。
参考:
如果这些 URL 有模式,则使用 RedirectMatch
指令代替,它与正则表达式匹配,而不是使用简单的 prefix-matching。例如,要为对 /secret
子目录(以及其中的所有文件)的所有请求提供 404,则使用以下内容:
RedirectMatch 404 ^/secret($|/)
要自定义 404 响应,请使用 ErrorDocument
指令:
ErrorDocument 404 /error-docs/404.html