Configure o htpasswd para um URL específico

2

Eu tenho um arquivo htpasswd, funciona bem - no meu htaccess eu tenho:

<Limit GET POST>
require valid-user
</Limit>

O que funciona, login / passwd aparece bem quando você alcança a raiz do site. No entanto, eu preciso limitar isso para que o login / passwd apareça somente quando o usuário atingir, por exemplo, http://mywebsite.com/appear/here/* - então, basicamente, quando o usuário atingir /appear/here/* , ele deverá mostrar ..

Eu consultei O htpasswd pode ser usado para restringir o acesso a um URL em vez de uma pasta específica? - mas ainda não consigo descobrir ..

Já tentei:

<Files /appear/here/*>
require valid-user
</Files>

<Directory /appear/here/*>
require valid-user
</Directory>
    
por williamsowen 08.03.2012 / 18:21

2 respostas

1

<Directory> é para um caminho de diretório físico em seu servidor; ou você pode usar <Location> .

Um deles:

<Directory /path/to/webroot/appear/here>
    Require valid-user
</Directory>

Ou:

<Location /appear/here>
    Require valid-user
</Location>
    
por 08.03.2012 / 18:28
1

A diretiva <Files > tentará corresponder ao nome do arquivo, não ao caminho que leva ao nome do arquivo. Portanto, uma diretiva <Files > com uma barra é inválida. É frequentemente usado para combinar a extensão em um nome de arquivo.

A diretiva <Directory > é para diretórios relativos à raiz do sistema de arquivos . Então você provavelmente quer <Directory /var/www/docroot/appear/here> .

Como os URIs nem sempre correspondem aos caminhos do sistema de arquivos, é melhor que você tenha uma diretiva <Location > , pois eles são comparados com o URI.

<Location /appear/here>
  require valid-user
</Location>
    
por 08.03.2012 / 18:37