1:建立用户密码文件。
htpasswd -c /usr/local/apache/passwd 用户名
回车后会提示要求输入密码。
-c是新建文件。
如果添加其他用户到文件的话
htpasswd /usr/local/apache/passwd 另一个用户名
2:建立好密码文件后,修改httpd-vhosts文件。
如:<VirtualHost *:80>
    ServerAdmin webmaster@m6699.com
    DocumentRoot "/www/wwwroot"
    ServerName www.abc.com
<Directory "/www/wwwroot/需要加密码的目录">   ————加入这一段

    AuthType Basic
    Allow from all
    AuthName "弹出密码窗口提示的文字"
    AuthUserFile /usr/local/apache/passwd  ————之前建立的密码文件
    Require valid-user  -----允许文件中所有用户都能访问,如果只要求特定用的用户的话就这样写 Require user 用户名
</Directory>
</VirtualHost>
当然用户少的话这样就可以了 如果好几百的话会大大影响性能。那时候就要选择其他方式了。
还有个组用户的是在apache手册上看的
AuthGroupFile /usr/local/apache/passwd/groups
Require group GroupName