实例一:需要用户名和口令的访问控制,限制 WWW 服务器中 /home/httpd/html/backup/ 目录中网站 www.britepic.org 页面的访问,只允许用户“user1”以口令“passwd1”访问页面。
基本情况:假设www.britepic.org 站点Apache服务器中的httpd.conf文件有设置为:
DocumentRoot /home/httpd/html
AccessFileName .htaccess
AllowOverride All
实现步骤:
1.使用htpasswd建立用户文件:
$ htpasswd -c /home/httpd/secr/.htpasswd user1
此程序会询问用户“user1”的口令,你输入“passwd1”,两次生效。
2.建立.htaccess文件
用“vi /home/httpd/html/backup/.htaccess”命令建立.htaccess文件,并写入以下几行:
AuthName My Friend Only (注:这个名字是任取的)
AuthType Basic
AuthUserFile /home/httpd/secr/.htpasswd
require user super
最后设置文件.htpasswd和.htaccess的文件权限,确保Apache用户有读的权限这样就完成了网页密码设置的工作,现在你可以在浏览器中试一试效果了。
实例二:允许一组用户访问一个目录。例如现在www.britepic.org站点想让myfriend
组中的m1与m2两个用户分别能使用口令“m1pass”和“m2pass”访问/home/httpd/html/
backup/目录中的页面。
实现步骤:
1.使用htpasswd建立用户文件,并在提示信息分别输入m1与m2两个用户的口令“m1pass”和“m2pass”:
htpasswd -c /home/httpd/secr/.htpasswd m1
htpasswd -c /home/httpd/secr/.htpasswd m2
2.建立组文件,用“vi /home/httpd/secr/.htgroup”命令建立.htgroup文件,并写入下面一行:
myfriend:m1 m2
3.建立.htaccess文件,用“vi /home/httpd/html/backup/.htaccess”命令,并写入以下几行:
AuthName My Friend Only
AuthType Basic
AuthUserFile /home/httpd/secr/.h