加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

页面访问控制的3种方法

发布时间:2020-12-13 21:42:01 所属栏目:Nginx 来源:网络整理
导读:我们经常会看到这种现象,看下图 apache 页面访问控制 为什么要进行这样的控制呢,给不同的人看不同的东西,对信息进行保护,虽然这种保护比较低级,多多少少还是有点用的。 一,用htpasswd命令,产生权限控制文件 [zhangy@BlackGhost test]$ htpasswd -c ./

我们经常会看到这种现象,看下图

apache 页面访问控制

apache 页面访问控制

为什么要进行这样的控制呢,给不同的人看不同的东西,对信息进行保护,虽然这种保护比较低级,多多少少还是有点用的。

一,用htpasswd命令,产生权限控制文件

[zhangy@BlackGhost test]$ htpasswd -c ./access tank? //生成一个密码文件 ,-c是新建一个文件? htpasswd -h可查看
New password:??????????? //提示输入密码
Re-type new password:??????? //重复密码
Adding password for user tank
[zhangy@BlackGhost test]$ cat access??? //查看一下密码文件
tank:Uj5B3qIF/BNdI????? //用户名是明文的,密码是加密的。

到这儿密码文件是生成好了。

二,页面访问控制方法

1,能过修改httpd.conf或者是httpd-vhosts.conf来进行配置

listen 10004
NameVirtualHost *:10004

2,我们可以利用.htaccess文件来进行控制

在test的根目录下面建一个.htaccess的文件

[zhangy@BlackGhost test]$ vi .htaccess?? //打开个文件 ,添加权限内容
[zhangy@BlackGhost test]$ cat .htaccess? //下面就是.htaccess的内容
 AuthType Basic
 AuthName "access test"
 AuthUserFile /home/zhangy/www/test/access
 Require valid-user

如果要给很多人设置不同的用户名和密码,使用AuthGroupFile设置选项比较方便

3,不用密码文件,也可以进行访问控制

define('ADMIN_USERNAME','tank'); ?? ?// Admin Username
define('ADMIN_PASSWORD','tank'); ??? ?// Admin Password

//log check
if (!isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW']) ||
 $_SERVER['PHP_AUTH_USER'] != ADMIN_USERNAME ||$_SERVER['PHP_AUTH_PW'] != ADMIN_PASSWORD) {
 Header("WWW-Authenticate: Basic realm="access test"");
 Header("HTTP/1.0 401 Unauthorized");

 echo <<

上面用的是php的方法,其他语言我想也有。您可以把上面的这段代码写成一个文件,进行共用包涵,也可以把它封装到底基,这样不管访问什么页面,都可以进行访问控制。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读