================写在前面的话==============

1.本试验使用的apache版本是2.4.24

场景描述:网站后台管理页面比较重要,不应该任何人都让访问,所以对后台页面做认证就显得非常有必要。

=================现在开干==============

思路:使用.htpasswd工具生成加密文件>在apache里面进行配置

1:使用htpasswd工具生成加密文件

     htpasswd说明:htpasswd是apache自带的用户和密码加密文件生成工具,如果没有该工具也可百度搜索在线生成htpasswd文件的网站。如果apache是通过RPM的方式安装的话,该命令存放在/usr/bin/目录下,如果apache是源码方式安装的话,该命令存放在apache安装目录的bin目录下。

①使用htpasswd工具生成一个位于/usr/local/apache/conf目录下名为.htpasswd的文件,该文件中包含用户名为renzheng,密码为renzheng123的用户。

/usr/local/apache/bin/htpasswd -cbm /usr/local/apache/conf/.htpasswd renzheng renzheng123
htpasswd命令选项介绍:

-c 创建一个加密文件   -n 不更新加密文件,只将apache htpasswd命令加密后的用户名密码显示在屏幕上   -m 默认apache htpassswd命令采用MD5算法对密码进行加密   -d apache htpassswd命令采用CRYPT算法对密码进行加密   -p apache htpassswd命令不对密码进行进行加密,即明文密码   -s apache htpassswd命令采用SHA算法对密码进行加密   -b 在apache htpassswd命令行中一并输入用户名和密码而不是根据提示输入密码   -D 删除指定的用户

②查看.htpasswd文件是否生成并包含用户名为renzheng且密码经过加密的内容。

cat /usr/local/apache/conf/.htpaawd

2.在Apache中进行配置

①:编辑虚拟主机配置文件

vim /usr/local/apache/conf/extra/httpd-vhosts.conf

②:在该文件中我们在<VirtualHost *:80></VirtualHost>标签中插入如下内容

<locationmatch "/renzheng.php">
AuthType Basic
AuthName "Please Insed Password"
AuthUserFile "/usr/local/apache/conf/.htpasswd"
Require valid-user
</locationmatch>

说明:Require valid-user这个选项是所有.htpasswd文件中的用户都能够用来进行认证,如果不想所有用户指向指定个别用户,可以用命令 Require user 用户1 用户2 用户3

如下是我自己的配置文件内容,可做参考:

#针对页面做认证
<locationmatch "/renzheng.php">
AuthType Basic
AuthName "Please Input Your Password"
AuthUserFile "/usr/local/apache/conf/.htpasswd"
Require valid-user
</locationmatch>

Apache设置页面认证(原创贴-转载请注明出处)的更多相关文章

  1. Apache开启状态查看页面(原创贴-转载请注明出处)

    =================写在前面的话================== 场景描述:有时候我们需要查看apache的运行状态,只需要开启apache的status功能就可以实现,但是stat ...

  2. Java程序员面试宝典1 ---Java基础部分(该博文为原创,转载请注明出处)

    (该博文为原创,转载请注明出处   http://www.cnblogs.com/luyijoy/  by白手伊凡) 1.    基本概念 1)         Java为解释性语言,运行过程:程序源 ...

  3. 后端Apache获取前端Nginx反向代理的真实IP地址 (原创贴-转载请注明出处)

    ====================说在前面的话==================== 环境:前段Nginx是反向代理服务器:后端是Apache是WEB项目服务器 目的:让后端Apapche获取 ...

  4. Apache2.4权限配置(原创帖-转载请注明出处)

    ==================说在前面的话================= 1:这次实验使用的php项目是Discuz,Discuz的安装请参照:http://www.cnblogs.com/ ...

  5. 转载请注明出处: https://github.com/qiu-deqing/FE-interview

    转载请注明出处: https://github.com/qiu-deqing/FE-interview Table of Contents generated with DocToc FE-inter ...

  6. 移动端H5页面遇到的问题总结(转载请注明出处)

    最近刚做完一个移动端的项目,产品之无敌,过程之艰辛,我就不多说了,记录下在这个项目中遇到的问题,以防万一,虽然这些可能都是已经被N多前辈解决掉了的问题,也放在这里,算是为自己漫漫前端路铺了一颗小石子儿 ...

  7. zabbix的离线安装方法----孙祎晨,如需转载请注明出处,谢谢配合。

    ------------------------zabbix的离线安装步骤--------------------------------------------------------------- ...

  8. Discuz的安装 (原创帖,转载请注明出处)

    ========================写在前面的话========================= 1.LAMP环境搭建请查看这篇日志:http://www.cnblogs.com/yic ...

  9. 原创centos7安装hadoop2.7(转载请注明出处)

    启用ip vi /etc/sysconfig/network-scripts/ifcfg-ONBOOT=yes 编辑DNS /etc/resolv.conf nameserver 114.114.11 ...

随机推荐

  1. TiD大会学习心得之沟通交流

    沟通交流是敏捷成功的关键要素,据相关调查阻碍敏捷的主要原因都与人有关:例如缺乏领导支持.团队缺乏协作精神.公司文化与敏捷相冲突等等:同时沟通交流也是团队建设.教练自身成长的重要支柱.下面结合在< ...

  2. ajax跨域通过 Cors跨域资源共享 进行GetPost请求

    using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Ne ...

  3. 数字和为sum的方法数

    [编程题] 数字和为sum的方法数 给定一个有n个正整数的数组A和一个整数sum,求选择数组A中部分数字和为sum的方案数. 当两种选取方案有一个数字的下标不一样,我们就认为是不同的组成方案. 输入描 ...

  4. google play iap 常见问题

    1.测试阶段query时获取的sku对象为空 解:测试阶段只能使用如下sku // private static final String SKU_TEST = "android.test. ...

  5. 针对功能权限(url访问)如何避免越权访问

    你可以用request获得之前的页面路径:Request.getHeader("Referer");然后你可以判断一下,这个是字符串类型的. 如果是需要登录的,你可以从sessio ...

  6. QHash

    #include <QCoreApplication> #include<QHash> #include<QDebug> int main(int argc, ch ...

  7. Method Swizzling

    学习博客: http://www.cocoachina.com/ios/20160121/15076.html (这个作者太牛了,写了我一直想知道的类簇的swizz方法) 一. 一般的swizz 先给 ...

  8. Apache 配置多端口

    Apache 配置多端口,主要是以下步骤 1. 如果电脑是64位的,官网上下载WampServe,装的过程中如果出现msvcp110.dll丢失的话,解决办法如下: 1.1 首先是打开浏览器,在浏览器 ...

  9. 前台获取Dropdownlist选中的text

    $("#ddltest").find("option:selected").text()

  10. Qt字符串类——3.字符串的转换

    (1)QString::toInt()函数将字符串转换为整型数值,类似的函数还有toDouble().toFloat().toLong().toLongLong()等.下面举个例子说明其用法: QSt ...