Você pode permitir o acesso ao seu site para determinados usuários. Por exemplo, quando você está mostrando o seu site para o seu chefe, você vai dar a ele um usuário e senha para fazer login no seu site.
Para permitir o acesso ao seu site por nome de usuário e senha, você pode modificar o arquivo do virtual host da seguinte forma:
...
<Directory /home/username/helloworld/public/>
DirectoryIndex index.php
AllowOverride All
AuthType Basic
AuthName "Authentication Required"
AuthUserFile /usr/local/apache/passwd/passwords
Require valid-user
</Directory>
...
A linha 5 define o método de autenticação básica. O método mais
Básico É importante esteja ciente, no entanto, que a autenticação básica envia
a senha do cliente para o servidor sem criptografia. Este método não deve,
portanto, ser usado para dados sensíveis. O Apache suporta uma outra autenticação
método: AuthType Digest
. Este método é muito mais seguro.
Os navegadores mais recentes suportam a autenticação Digest.
A linha 6 define o texto que será exibido ao usuário quando ele tentar efetuar login.
A linha 7 define o arquivo onde as senhas serão armazenadas. Este arquivo deve ser criado
com o htpasswd
.
A linha 8 permitirá que qualquer pessoa faça o login listando no arquivo, para aqueles que digitarem sua senha corretamente.
Para criar o arquivo passwords
, digite o seguinte comando:
htpasswd -c /usr/local/apache/passwd/passwords <username>
No comando acima, você deve substituir o espaço <username>
com o nome do usuário. Você pode escolher um nome, por exemplo "admin".
O comando solicitará a senha do usuário e vai salvar a senha no arquivo:
# htpasswd -c /usr/local/apache/passwd/passwords <username>
New password:
Re-type new password:
Adding password for user <username>
Quando o usuário tenta visitar o site, ele vai ver uma mensagem solicitando a autenticação HTTP. Para entrar em seu site, o visitante deve digitar o nome de usuário e senha corretos.
Para informações adicionais sobre autenticação HTTP, você pode consultar na documentação do Apache Autenticação e Autorização