.htaccess 拒绝 IP 范围以外的文件夹访问

.htaccess deny folder access except IP range

我知道我可以在该文件夹 (wp-admin) 中放置一个单独的 .htaccess,但是,我想知道我是否可以使用站点的主 .htaccess 文件中的规则来做到这一点。

并且也在一个指令中对其他文件夹执行此操作。 (wp-includes, wp-content)

例如,如果我想阻止访问 WP 站点上的 wp-admin 文件夹,我发现的一件事是这样的,但不确定它是否正确:

<Files wp-admin$>
Order Deny,Allow

Deny from All
Allow From 47.255.0.0/16
</Files>

z

使用 Files 指令只能匹配特定文件,不能匹配文件夹。您需要为此使用 mod-rewrite

RewriteEngine On

#If not Allowed IP address
RewriteCond %{REMOTE_ADDR} !^47\.255\.0\.0/16$
#folders
RewriteCond %{REQUEST_URI} (wp-admin|wp-includes|wp-content) [NC]
#deny access
RewriteRule ^ - [F,L]