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

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

场景描述:有时候我们需要查看apache的运行状态,只需要开启apache的status功能就可以实现,但是status页面不应该是所有人都能够访问的,所以我们还需要对status页面做认证管理。

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

 

思路:开启status功能(加载mod_status.so模块>加载status模块的配置文件>开启详细状态功能)>配置页面认证(使用htpasswd命令生成用户信息加密文件>配置status使用加密文件进行认证)

一:开启status功能

1.加载mod_status.so模块

   ①编辑httpd.conf文件

vim /usr/local/apache/conf/httpd.conf

   ②查看行 LoadModuls status_module modules/mod_status.so 前是否有注释符号#,如果有则去掉,如果没有则直接进行下一步操作。

2.加载status模块的配置文件

   ①编辑httpd.conf文件

vim /usr/local/apache/conf/httpd.conf

   ②查看行 Include conf/extra/httpd-info.conf 前是否有注释符号#,如果有则去掉,如果没有则直接进行下一步操作。

3.开启详细状态功能

   ①编辑httpd-info.conf文件

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

   ②查看行 ExtendedStatus On 前是否有注释符号#,如果有则去掉,如果没有则直接进行下一步操作。

   

===设置完这些,重启apache服务后我们就可以通过域名/server-status查看apache允许状态了,接下来我们来配置针对status页面做认证====

小技巧:访问server-status页面路径后面加上?refresh=3可以使页面自动3秒刷新一次,这里的3指的是秒,你可以根据自己的需求更改这个时间的周期

二:配置status页面认证

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.配置status中进行认证

    ①:编辑status配置文件

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

    ②:用如下代码替换源文件中的代码

<locationmatch "/server-status">
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 

posted @ 2016-11-10 10:47  一王小可一  阅读(587)  评论(0编辑  收藏  举报