我可以在基於 URI 和 IP 的 nginx 中拒絕嗎?

我可以在基於 URI 和 IP 的 nginx 中拒絕嗎?

基本上我有一個 WordPress 網站(有電子商務商店和社交登入)。我已根據 IP 位址拒絕所有對 wp-login.php 的存取。問題是社交登入使用此 wp-login 檔案。所以我想知道是否可以: - 透過 ip 位址阻止幾乎所有對 wp-login.php 的查詢,並僅允許透過 ip 進行特定查詢。意義
wp-login.php允許 1 ip 拒絕所有
wp-login.php?action=lostpassword允許 1 ip 拒絕所有
wp-login.php?action=rp&key=.*?&login=.*允許 1 ip 拒絕所有


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;
        }

相關內容