Print service provided by iDogiCat: http://www.idogicat.com/
home logo





Home > IT > Web Server Administration > Apache用户认证方法汇总

Apache用户认证方法汇总

MOST IMPORTANT NOTE: the AuthUserFile value should be the absolute file system path, not the URL path.

基本的Apache用户认证方法

若对某一目录下的文件如/home/ftp/pub需要做到用户认证,则在httpd.conf中加入下面的行

options indexes followsymlinks
allowoverride authconfig
order allow,deny
allow from all 

用在目录/home/ftp/pub下放文件.htaccess,内容如下:

authname "shared files"
authtype basic
authuserfile /etc/.passwd
require valid-user 

用随Apache来的程序htpasswd 生成文件/etc/.passwd,每行一个用户名:密码

只要能提供正确的用户名和密码对,就允许登录访问,这是针对任何地址来的请求都要求提供用户名和密码认证。

针对部分网段或地址要求认证

若公司LAN所在网段为192.168.0.0/24,且有一防火墙专线接入Internet,内部网卡的地址为192.168.0.1/32,则现在希望所有通过拨本地163通过防火墙上的apache反向代理向LAN上的另一WWW服务器访问时需要认证,而本地LAN上的用户不需认证。可以在httpd.conf中放入:

</Directory /home/ftp/pub>
   Options Indexes FollowSymLinks
   AllowOverride AuthConfig
   order deny,allow
   deny from 192.168.0.1
</Directory>

且在/home/ftp/pub/.htaccess中放入:

AuthName "shared files"
AuthType Basic
AuthUserFile /etc/.passwd
require valid-user
satisfy any 

对某目录有不同的权限

仅某些人可以存取一目录下的子目录

如有一目录/home/ftp/pub/sales,有三个用户user1,user2,user3都需要用户名和密码进入/home/ftp/pub,但仅user1,user2能进入/home/ftp/pub/sales.则放下面的行到httpd.conf

</Directory /home/ftp/pub>
   Options Indexes
   AllowOverride AuthConfig
   order allow,deny
   allow from all
</Directory> 

</Directory /home/ftp/pub/sales>
   Options Indexes
   AllowOverride AuthConfig
   order allow,deny
   allow from all
</Directory> 

/home/ftp/pub/.htaccess为:

AuthName "shared files"
AuthType Basic
AuthUserFile /etc/.passwd
require valid-user 

/home/ftp/pub/sales/.htaccess为:

AuthName "shared files"
AuthType Basic
AuthUserFile /etc/.passwd
AuthGroupFile /etc/.salesgroup
require group manager 

文件/etc/.passwd内容为:

user1:passwd1
user2:passwd2
user3:passwd3 

文件/etc/.salesgroup内容为:

manager: user1 user2