[原创]apache服务器实现用户验证

由 franktom 在 11-19-2003 09:35 发表:

[原创]apache服务器实现用户验证

原文: http://www.5ilinux.com/apache03.html

转载请注明出处:)

apache服务器实现用户验证

apache服务器已经内置用户验证机制,大家只要适当的加以设置,便可以控制网站的某些部分要用户验证。大家只要跟着我一步步做下来就应该能轻松实现用户验证。

前期准备,必须已经安装apache,如果还没安装,或者对安装很模糊的话,请先预习 http://www.5ilinux.com/apache01.html

第1步:

我们在/var/www(apache的主页根目录)下建立一个test目录

mkdir /var/www/test

第2步

然后我们编辑httpd.conf

添加

Alias /test"/var/www/test"

 1<directory "="" test"="" var="" www="">   
 2  
 3Options Indexes MultiViews   
 4  
 5AllowOverride AuthConfig #表示进行身份验证   
 6  
 7Order allow,deny   
 8  
 9Allow from all   
10  
11</directory>

#AllowOverride AuthConfig 表示进行身份验证 这是关键的设置

第3步

在/var/www/test创建.htaccess文件

vi /var/www/test/.htaccess

AuthName "frank share web"

AuthType Basic

AuthUserFile /var/www/test/.htpasswd

require valid-user

#AuthName 描述,随便写

#AuthUserFile /var/www/test/.htpasswd

#require valid-user 或者 require user frank 限制是所有合法用户还是指定用户

#密码文件推荐使用.htpasswd,因为apache默认系统对“.ht”开头的文件默认不允许外部读取,安全系数会高一点哦。

第4步

就是创建apache的验证用户

htpasswd -c /var/www/test/.thpasswd frank

#第一次创建用户要用到-c 参数 第2次添加用户,就不用-c参数

如果你们想修改密码,可以如下

htpasswd -m .htpasswd frank

第5步:

ok,重启apache服务,然后访问 http://你的网站地址/test 如果顺利的话,应该能看到一个用户验证的弹出窗口,只要填入第4步创建的用户名和密码就行

后话,为了服务器的性能,一般不推荐使用AllowOverride AuthConfig或者AllowOverride ALL,因为这会使服务器会不断的去寻找.htaccess,从而影响服务器的效能,一般我们把一些后台管理界面或者其他特殊目录可能需要加验证这个需求。


我爱linux www.5ilinux.com


由 魔鬼庄园 在 11-19-2003 14:08 发表:


不错的文章~谢谢~


由 escapedd 在 11-19-2003 18:46 发表:


我来补充:

如果要对AuthUserFile中的用户再进行筛选,比如有两个用户frank,

Paul,则要在.htaccess加上

AuthGroupFile /var/www/test/.htgruop

Require group admin

其中.htgroup为用户组的文件名,文件内容

Published At
Categories with 服务器类
Tagged with
comments powered by Disqus