如何在 apache 和 nginx 中为指定的现有文件返回 404?

如何在 apache 和 nginx 中为指定的现有文件返回 404?

我需要对某些指定文件(例如“config.php”)返回 404 错误。如何在 Apache 中使用“.htaccess”实现此目的?在 nginx 中如何实现此目的(无需 htaccess)?谢谢。

答案1

NGINX:

location = /config.php {
    return 404;
}

答案2

你不需要.htaccess使用 Apache,实际上它只推荐作为最后一招. 同样,mod_rewrite 只应在必要时使用:何时不使用 mod_rewrite

您可以同时使用RedirectRedirectMatch从 mod_alias 返回 404:

  • Redirect 404 /config.php
  • RedirectMatch 404 ^/config.php$

您可以将它们直接放置在您的服务器配置中,或者放置在您的虚拟主机例如

<VirtualHost *:80> 
    ServerName www.example.com
    DocumentRoot "/var/www/example.com"

    Redirect 404 /config.php
</VirtualHost>

答案3

.htaccess在 Apache 上(使用 mod_rewrite):

RewriteEngine On

RewriteRule ^config\.php$ - [R=404]

假设/config.php在文档根目录中。

相关内容