
基本的に、私は WordPress サイト (e コマース ストアとソーシャル ログイン付き) を持っています。IP アドレスに基づいて wp-login.php へのすべてのアクセスを拒否しました。問題は、ソーシャル ログインがこの wp-login ファイルを使用することです。そこで、次のことが可能かどうか疑問に思っています。 - IP アドレスによって wp-login.php へのほぼすべてのクエリをブロックし、IP によって特定のクエリのみを許可する。つまり、
wp-login.php
1 つの IP を許可してすべてを拒否する
wp-login.php?action=lostpassword
1 つの IP を許可してすべてを拒否する 1 つの IP を許可して
wp-login.php?action=rp&key=.*?&login=.*
すべてを拒否する
.
.
wp-login.php?ywsl_social=google
すべての IP を
wp-login.php?ywsl_social=twitter
許可してすべての IP を許可します。
次のようになります。
location = /wp-login.php {
if ($query_string = "ywsl_social=google|ywsl_social=twitter")
{
allow all;
fastcgi_pass unix:/var/sockets/sock.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_param HTTPS on;
}
else {
allow 1.1.1.1;
deny all;
fastcgi_pass unix:/var/sockets/sock.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_param HTTPS on;
}