如何添加Apache服务器用户验证AllowOverride AuthConfig

如何添加Apache服务器用户验证AllowOverride AuthConfig,第1张

apache服务器已经内置用户验证机制,大家只要适当的加以设置,便可以控制网站的某些部分要用户验证。

通常分为以下三步:

1、在apache的配置文件httpd.conf中声明要进行验证的目录

2、在要进行验证的目录中创建.htaccess文件,在此文件中指明用于验证的文件存放的位置

3、根据.htaccess指明的位置,用apache自带的htpasswd命令创建用于验证的文件

步骤说明:

假设要对/home/ddd这个目录进行访问控制。(这个目录不在APACHE的主目录中,因此要用alias 添加为虚拟目录)

1、在apache的配置文件httpd.conf中声明要进行验证的目录

编辑httpd.conf

LoadModule auth_module modules/mod_auth.so #需要加载此模块进行认证

Alias /test "/home/ddd" #添加为虚拟目录

Options Indexes MultiViews

AllowOverride All #允许用.htaccess文件中指定的验证文件进行身份验证

Order allow,deny

Allow from all

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

此外,也可用AllowOverride AuthConfig

实例:

ServerName test.xxx.com

ServerAlias xxx.com 123.123.123.123

DocumentRoot /data/ddd/

Options Indexes FollowSymlinks MultiViews

AllowOverride All

ErrorLog /error.log

2、在要进行验证的目录中创建.htaccess文件,在此文件中指明用于验证的文件存放的位置

在/home/ddd下创建.htaccess文件

vi /home/ddd/.htaccess,内容如下:

AuthName "请输入用户名及口令"

AuthType Basic

AuthUserFile /home/.htpasswd

require valid-user

#AuthName 描述,出现在验证对话框标题栏中

#AuthUserFile /home/.htpasswd (指定验证文件存放于/home中,文件名为.htpasswd,此文件具有隐含属性,其中包括允许访问的用户名及密码。

#require valid-user 使用验证文件中的有效用户进行验证

也可使用 require user <用户>来指定特定用户进行验证

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

3、根据.htaccess指明的位置,用apache自带的htpasswd命令创建用于验证的文件

由于已经在第2步中指定验证文件为/home/.htpasswd文件,所以下面创建这个文件

htpasswd -c /home/.htpasswd jp #创建.htpasswd文件,并添加用户jp,会要求输入口令

htpasswd /home/.htpasswd test #.htpasswd文件中添加第二个用户:test)

也可以不通过交互方式,直接在命令行,将口令添加到.htpasswd文件中

htpasswd -bc /home/.htpasswd jp 111 (创建.htpasswd文件,并添加用户jp,密码为111)

htpasswd -b /home/.htpasswd test 222 (.htpasswd文件中添加第二个用户:test 密码为222)

#第一次创建用户要用到-c 参数 第2次添加用户,就不用-c参数,因为已经有.htpasswd文件,就不用再创建了。-b表示从命令行直接获取参数值,添加到验证文件.htpasswd中

如果想修改密码,可以用如下命令:

htpasswd -m .htpasswd jp

对存放于.htpasswd文件中的用户jp进行口令更改

不用,但是要更改为

<Directory />

Options FollowSymLinks ExecCGI Indexes

AllowOverride None

# Order deny,allow

# Deny from all

# Satisfy all

</Directory>

实现效果

1.修改http.conf文件

设置指定目录的配置,例如设定test目录的配置,增加验证。

文件内容如下:

第一行,验证提示信息。

第二行,验证类别。

第三行,密码文件所在路径,绝对路径。

第四行,指定登录用户名。指定admin用户登录。

输入上面命令,htpasswd目录写自己的目录,最后一个参数即为登录账号名,会提示输入两次密码。

重启apache。

访问设定的地址,看下是否已经有apache的登录验证。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11410987.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存