Não consigo entrar na página wp-admin (cloudflare, nginx)

Não consigo entrar na página wp-admin (cloudflare, nginx)

Eu tenho um site wordpress rodando em Nginx por trás do DNS cloudflare. Eu usei "set_real_ip_from" para todos os ips cloudflare em nginx.conf. Quando tento acessar meu site consigo ver meu IP real nos logs. Alterei o diretório de login de administrador padrão do wordpress de wp-admin para o nome do meu diretório. Eu só quero que ips específicos tenham permissão para fazer login no meu wordpress, mas com isso na configuração do meu site, bloco do servidor: location ~ /(wp-admin|wp-login|mydirectory) { allow my.real.ip; deny all; return 404; } não consigo acessar o administrador do wordpress e recebo 404. Se eu excluir este bloco, tudo estará funcionando bem, então acho que estou digitando Algo errado ? procurei neste fórum com algumas variações diferentes, mas nenhuma delas parece funcionar. Eles me permitem acessar o wp-admin, mas qualquer pessoa pode acessar ou bloqueia todos.

EDITAR Infelizmente, não consegui fazê-lo funcionar, não importa o que tentei, então o que fiz foi excluir o bloco location ~ /(wp-admin|wp-login|mydirectory), recarregar a configuração do nginx, fazer login no wordpress, desativar o diretório de alteração do wp-admin plugin, voltei e adicionei novamente o bloco location ~ /(wp-admin|wp-login|mydirectory) dentro dele, adicionei location ~ .php$ { como @Michael Hampton sugeriu e agora posso acessar minha página de administração do wordpress por usando o URL "wp-admin". Não sei por que não funcionou com o URL personalizado, mas acho que isso servirá, já que o nginx bloqueará qualquer outra pessoa que tente acessá-lo, mas seria interessante saber por que não funcionou:/

Responder1

Você recebe um 404 porque solicitou especificamente um 404 para todas as solicitações correspondentes location.

    return 404;

Você precisará remover esta declaração se quiser receber algo diferente de 404.

Além disso, você precisará colocar um aninhado locationdentro dele locationpara processar arquivos PHP.

location ~ /(wp-admin|wp-login|mydirectory) {
    ...
    location ~ .php$ {
        ....

informação relacionada