O servidor Apache possui um mecanismo de autenticação de usuário integrado. Contanto que você o configure adequadamente, você pode controlar certas partes do site para exigir autenticação do usuário. Contanto que você me siga passo a passo, você poderá implementar facilmente a verificação do usuário.
Preparação: O Apache deve estar instalado.
Etapa 1:
Criamos um diretório de teste em /var/www (diretório raiz da página inicial do Apache).
mkdir /var/www/test
Etapa 2:
Então editamos httpd.conf
adicionar à
Alias /teste"/var/www/teste" <Diretório "/var/www/test"> Opções Índices MultiViews AllowOverride AuthConfig #Indica autenticação Ordem permitir, negar Permitir de todos </Diretório> #AllowOverride AuthConfig significa autenticação, que é uma configuração crítica
Etapa 3:
Crie o arquivo .htaccess em /var/www/test
vi /var/www/test/.htaccess
AuthName "frank share web"
AuthType Básico
AuthUserFile /var/www/test/.htpasswd
requer usuário válido
#AuthName descrição, escreva o que quiser
#AuthUserFile /var/www/test/.htpasswd
#require valid-user ou require user frank restringe todos os usuários legais ou usuários específicos
#Recomenda-se utilizar .htpasswd para arquivos de senha, pois o sistema padrão do Apache não permite leitura externa de arquivos começando com ".ht" por padrão, portanto o fator de segurança será maior.
Etapa 4:
Basta criar um usuário verificado para apache
htpasswd -c /var/www/test/.htpasswd frank
#Ao criar um usuário pela primeira vez, você precisa usar o parâmetro -c. Ao adicionar um usuário pela segunda vez, você não precisa do parâmetro -c.
Se quiser alterar sua senha, você pode fazer o seguinte
htpasswd -m.htpasswd franco
Etapa 5:
ok, reinicie o serviço apache e visite http://endereço do seu site/teste. Se tudo correr bem, você deverá ver uma janela pop-up para verificação do usuário. Basta preencher o nome de usuário e a senha criados na etapa 4.
Por uma questão de desempenho do servidor, geralmente não é recomendado usar AllowOverride AuthConfig ou AllowOverride ALL, porque isso fará com que o servidor procure constantemente por .htaccess, afetando assim o desempenho do servidor. Geralmente, podemos precisar verificar isso. algumas interfaces de gerenciamento em segundo plano ou outros diretórios especiais são necessários.