所以我在将 IP 范围列入白名单以允许访问位置下的 wp-admin 端点时遇到问题。
我在 nginx.conf 中有类似于下面的内容(列出的 IP 是一个示例)。当我在 /wp-admin 中拒绝所有内容时,我得到了预期的 403 。然而,当添加允许子网时,我遇到了 404。
我也尝试过允许单个IP,但我得到了同样的错误。
location / {
proxy_pass http://wordpress;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
}
location /wp-admin {
allow 123.0.0.0/4;
deny all;
}
配置中出了什么问题,导致允许功能无法正常工作?
谢谢
我相信您仍然需要将所有
proxy_*
设置从location /
复制到location /wp-admin
。我不认为 location /wp-admin
实际上继承了 location /
的任何内容,您必须使用 nested 配置块才能继承。换句话说,就像这样:
location / {
proxy_pass http://wordpress;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
location /wp-admin {
allow 123.0.0.0/4;
deny all;
}
}