.htaccess在未经授权的文件夹访问时重定向到404(未找到)消息

Leo*_*eon 7 apache .htaccess

当用户尝试访问未经授权的目录时,我想显示404(未找到)消息.我不想使用Forbidden页面.我试过下面的代码,但它不起作用.

RedirectMatch 404 ^/htaccess/.*$
Run Code Online (Sandbox Code Playgroud)

什么可能出错?

Ulr*_*lha 11

尝试将以下内容添加到您的htaccess文件中

#if the URI starts with htaccess, return a 404
RewriteRule ^htaccess/ - [R=404,L,NC]
Run Code Online (Sandbox Code Playgroud)

编辑

例如系统/功能,系统/类,......

如果您有很多文件夹,那么使用RewriteCond如下所示,因为它比单个RewriteRule中的多个文件夹或多个RewriteRules更容易阅读,这些文件复制404件

RewriteCond %{REQUEST_URI} ^htaccess/ [NC,OR]
RewriteCond %{REQUEST_URI} ^system/function/ [NC,OR]
#just make sure the last rule does  NOT have an OR
RewriteCond %{REQUEST_URI} ^system/class/ [NC]
RewriteRule . - [R=404,L,NC]
Run Code Online (Sandbox Code Playgroud)