Atualmente htaccess está negando todos os usuários. Quero permitir que apenas o feed JSON do wordpress seja acessível a todos os usuários
No local do arquivo htaccess, o URL do feed é:
./row/wordpress/wp-json/wp/v2/screen
Pergunta
Pelo que entendi, esta é uma url "virtual" criada por regras de reescrita. Como não é um arquivo real e apenas um endpoint, como permito que qualquer usuário o acesse?
Tentativa atual
Aqui está minha tentativa atual que bloqueia todos os usuários sem senha. Meu Files
nó não faz nada.
// root folder's .htaccess
AuthUserFile /var/www/domains/dev/.htpasswd
AuthType Basic
AuthName "Password Required"
Require user SecretUser
Order Deny,Allow
Deny from All
<Files "row/wordpress/wp-json/wp/v2/screen">
Allow from all
</Files>
Satisfy Any
Pergunta
Como posso obter o caminho virtual de ./row/wordpress/wp-json/wp/v2/screen
ser visível para todos os meus visitantes?
** editar **
desde então tentei os dois
<Directory row/wordpress/wp-json/v2/>
Allow from All
</Directory>
<Location row/wordpress/wp-json/v2/>
Allow from All
</Location>
Sem sucesso, ambos causam um 501
Aqui estão duas abordagens diferentes para permitir que uma única url, se ela se refere a um arquivo físico ou não, ignore a autenticação de senha básica:
Opção 1: Permitir um único URL por meio da proteção por senha:
Opção 2: aplique proteção por senha a todas as solicitações que não correspondem a um URL específico (esta opção requer o Apache 2.4):
Devido à natureza do caminho virtual (criado pelo wordpress), tive que usar
THE_REQUEST
:O redirecionamento do wordpress usa
wordpress/index.php
então o uso doREQUEST_URI
não estava funcionando porque o uri está sempre/path/to/wordpress/index.php
tornando a instrução my if inútil.NOTA
Se você precisar suportar PUT's ou outros, terá que adicionar isso.
[A-Z]{3}
ou[A-Z]{3-6}
onde o último se abrirá para tudo.