身份认证

  • Apache配置对站点目录的认证

    ·

    前言: 有的时候需要对站点中的某个目录进行保护,只有输入指定的账号密码才可以浏览。这当然可以通过动态网站设计语言来实现,但通过对Apache本身的配置来实现似乎要更方便一些。 配置方法: 一、Apache配置编辑及站点创建 创建一个站点配置文件。 [root@localhost auth]# vim /etc/httpd/conf.d/vhost1.conf 内容如下: <Directory “/tmp/html/auth/”> // 要启用认证的目录 AuthName “请认证身份” // 服务器返回的认证对话框的标题 AuthType Basic // 认证类型 AuthUserFile /tmp/html/auth/.htpasswd // 密码配置文件路径 require valid-user // 允许通过认证的所有用户访问,如果改为某一用户名则只允许此用户访问 </Directory> <VirtualHost *:80> // 创建一个简单的虚拟主机用于测试 DocumentRoot /tmp/html/ </VirtualHost> 创建站点运行目录及要开启认证的站点子目录。 [root@hostname ~]# mkdir -p /tmp/html{,/auth} 查看此时的站点目录结构。 [root@hostname ~]# tree /tmp/html/ /tmp/html/ └── auth 在站点子目录下创建首页文件。 [root@hostname ~]#…

    Read More

  • Apache配合MySQL做访问认证

    ·

    介绍: 默认情况下,任何用户都可以访问由Apache所承载的网站,但如果网站管理员想要只有通过身份认证的用户才能访问网站要怎样做呢? 当然,这个需求可以使用动态网页设计语言来实现,但本篇文章中我来介绍下如何使用Apache内置的身份认证来满足此需求。 安装软件包: # yum install -y mysql-server         //安装MySQL数据库,用于存放用户身份信息 # yum install -y httpd                //安装Apache # yum install -y mod_auth_mysql     //为Apache安装mod_auth_mysql模块,使其可以使用MySQL中存放的用户信息做认证 MySQL配置部分: 启动mysql服务器。 # service mysqld start 修改默认root密码(此root用户是MySQL的管理员账户,而非Linux系统的root用户)。 # mysqladmin -u root -p password 123456 之后会弹出提示,要求输入原root密码,安装MySQL后默认为空,直接回车即可。 若是MySQL5.6及以上版本,默认root密码不为空而是一个随机字符串,存放在~/.mysql_secret文件中。 使用root用户登录MySQL服务器,回车后会要求键入root密码。 # mysql -u root -p…

    Read More