lighttpd配置之用户验证(mod_auth)

Posted by Elton's Blog on July 13, 2009

有时候需要对某些web资源做权限验证。 在lighttpd中可以这样做。

  1. 激活mod_auth模块,在/etc/lighttpd/lighttpd.conf中去掉mod_auth模块前面的#
  2. 下载apache相关模块
# emerge -av app-admin/apache-tools
  1. 生成密码文件
# cd /var/lib/lighttpd/
# htdigest -c lighttpd.user.htdigest 'some text' username

其中some text是在密码提示框的标题中要显示的内容,lighttpd.user.htdigest是密码文件的文件名 执行过htdigest后,输入两边这个用户的密码后,就可以生成lighttpd.user.htdigest这个密码文件了

  1. 配置lighttpd.conf文件 添加
auth.debug                 = 0 
auth.backend               = "htdigest"
auth.backend.htdigest.userfile = var.statedir + "/lighttpd.user.htdigest"

auth.debug 是调试级别,0表示不调试,1表示记录’auth-ok’验证成功的信息, 2表示所有详细的调试信息 在需要验证的虚机上添加以下内容

auth.require = ( "" =>
                         (
                                "method"  => "digest",
                                "realm"   => "some text",
                                "require" => "user=username"
                         )
                        )

auth.require后的空引号表示虚机中所有路径都需要验证,如果只是部分需要验证,那么就指定具体路径

  1. 重启lighttpd,使配置生效