I'd like to cut off access to a subdirectory on my site but I want any access in the subdirectory to be a 404 error, not a 403 forbidden. How can this be accomplished?
-
redirect to a non-existent directory should do it... use a rewrite rule – Floris Sep 11 '13 at 00:07
4 Answers
Try:
RewriteRule ^directory/ - [L,R=404]
This redirects all requests for the folder "/directory/
", they get a 404 response.

- 142,182
- 29
- 220
- 220
-
along with this 404 status, can we show the content of a 404.html page? – Tausif Anwar Feb 03 '17 at 14:16
-
what about PHP and css/html, can they still access the folder? – TheCrazyProfessor Nov 02 '17 at 10:44
-
-
-
RewriteEngine On RewriteCond %{REQUEST_METHOD} GET RewriteRule ^(.*)$ - [L,R=404] if you want all subdirectories and files inside the folder included with the GET method only. – dhir Nov 11 '22 at 01:46
-
I think, 410 error better
RewriteRule ^directory/ - [L,R=410]
or my search:
RewriteCond %{HTTP_USER_AGENT} (googlebot|bingbot|Baiduspider) [NC]
RewriteRule .* - [R=410,L]
404 Not Found [19] - the most common mistake when using the Internet, the main reason - an error in writing the address of a Web page. The server understood the request, but did not find the corresponding resource at the specified URL. If the server knows that there was a document at this address, then it is desirable for it to use code 410. Answer 404 can be used instead of 403 if you need to carefully hide certain resources from prying eyes. Appeared in HTTP/1.0.

- 559
- 8
- 15
Redirect 404
Put this into the .htaccess file in the directory that you want off the record. The Redirect directive is part of mod_alias and can be used to send any status code, not just redirects.

- 654
- 1
- 10
- 17
You could also for the time being change which page a user will see when confronted with a 403 error, but I wouldn't recommend doing this long-term.
.htaccess:
ErrorDocument 403 /your404pagehere.php

- 185
- 1
- 9