Apache用户认证、域名跳转、Apache访问日志
5月29日任务
课程内容:
11.18 Apache用户认证
11.19/11.20 域名跳转
11.21 Apache访问日志
扩展
apache虚拟主机开启php的短标签 http://ask.apelearn.com/question/5370
11.18 Apache用户认证
用户认证的目的是增加安全性,不好的地方就是用户体验不好,每个人访问网站时还需要输入密码,但是需求是无处不在的,需求的类型也是多种多样的。
实例操作步骤如下:
vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //把第二个虚拟主机编辑成如下内容
/usr/local/apache2.4/bin/htpasswd -c -m /data/.htpasswd jimmy 使用命令方式生成密码文件
cat /data/.htpasswd 查看密码文件,以冒号分隔左边是用户名,右边是MD5加密的密码。
做完上面的操作后,重新加载配置文件 /usr/local/apache2.4/bin/apachectl graceful
然后使用curl命令
在Windows的hosts文件中添加111.com,然后到IE访问111.com就会提示输入用户名和密码的验证窗口。
输入正确的用户名和密码登录就可以看到访问页面的内容了
[root@jimmylinux-002 ~]# curl -x127.0.0.1:80 -ujimmy:abcd1234 111.com -I 也可以使用curl命令方式输入用户名和密码,如果验证通过会显示200代码。
还可以针对单个文件进行认证,比如对后台admin账号登录时进行认证。修改vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf 配置文件,修改内容如下。
/usr/local/apache2.4/bin/apachectl graceful 重新加载配置文件,如果以下错误,是因为配置文件中FilesMatch前面少了/
然后编辑一个admin.php的文件
这个时候直接输入命令curl -x127.0.0.1:80 111.com -I 也可以访问。
curl -x127.0.0.1:80 111.com/admin.php -I 访问这个同样是会报401错误的,是因为针对admin.php做了一个限制。
这个时候再加上用户名和密码就正常了
同样也可以在IE浏览器进行访问,会提示输入用户名和密码进行认证。
以上所有的操作就是用户认证方式,当你的网站有某些文件不需要别人访问查看时候,就可以通过用户认证的方式进行限制。
11.19/11.20 域名跳转
vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf 修改虚拟主机配置文件,可以把不用的内容加#注释掉。
在Windows的hosts文件中也需要加上 www.example.com
改完配置文件后需要重新加载 /usr/local/apache2.4/bin/apachectl graceful
在测试之前先检查下Apache是不是加载了rewrite模块,如果没有加载,需要打开,因为在编译的时候指定了modules,所以这个模块是一定存在的。
[root@jimmylinux-002 ~]# /usr/local/apache2.4/bin/apachectl -M |grep rewrite
[root@jimmylinux-002 ~]# vi /usr/local/apache2.4/conf/httpd.conf 把rewrite这行的#取消掉
现在进行测试看看是否能够正常使用,因为80监听的是全网,所以无论使用哪个IP都可以。
[root@jimmylinux-002 ~]# curl -x192.168.52.129:80 2111.com.cn -I (大写I表示只查看状态码,不显示内容)
可以看到上面的结果说明跳转成功
状态码解释:
301 永久重定向
302 临时重定向
404 文件不存在
401 用户认证失败
200 用户认证成功
11.21 Apache访问日志
日志文件存放在这个路径 ls /usr/local/apache2.4/logs/
cat /usr/local/apache2.4/logs/111.com-access_log 可以通过cat查看log
左边为来源IP地址,后面是访问时间,HEAD是通过curl命令访问的记录,GET是不加-I时候的内容。
vim /usr/local/apache2.4/conf/httpd.conf 可以通过修改主配置文件定义log
LogFormat就是日志的格式,有combined和common2种,我们默认使用的就是common,刚才看到的日志就是通过common这里面的变量定义的。
combined这种格式除了能够显示common的外,还可以显示Referer,显示User-Agent,什么叫Referer,User-Agent,User-Agent就是用户代理,作为一个用户,我想访问网站的内容,是需要通过浏览器或者curl方式去访问。
Referer是浏览器上一次所访问的URL网址,例如从百度主页去访问百度新闻,那么当访问到百度新闻时,记录的URL网址其实是百度主页,这个就是记录的Referer。
下面我们使用combined方式修改虚拟主机配置文件来定义日志
/usr/local/apache2.4/conf/extra/httpd-vhosts.conf
修改完以后重新加载配置文件 /usr/local/apache2.4/bin/apachectl graceful 在执行curl命令检查是否正常
在使用IE浏览器访问 http://111.com/admin.php 然后去查看下日志,最下面新生成的内容就会比common方式记录的丰富的多。
[root@jimmylinux-002 ~]# cat /usr/local/apache2.4/logs/111.com-access_log
在猿课论坛发一个测试帖子,然后在通过论坛点开111.com/admin.php 去访问,这样在日志里面就可以记录到 Referer 了。
Apache用户认证、域名跳转、Apache访问日志的更多相关文章
- apache用户认证 域名跳转 Apache访问日志
- Linux CentOS7 VMware LAMP架构Apache用户认证、域名跳转、Apache访问日志
一.Apache用户认证 vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //把111.com那个虚拟主机编辑成如下内容 <Virtu ...
- apache用户认证、默认主机、301跳转
我更正论坛一个同学帖子(今天坑我一下午):原文http://www.apelearn.com/bbs/foru ... 3%BB%A7%C8%CF%D6%A4 apache用户认证.默认主机.301跳 ...
- apache用户认证访问机制(转)
Apache服务器已经内置用户验证机制,大家只要适当的加以设置,便可以控制网站的某些部分要用户验证.前期准备,必须已经安装apache,如果还没安装,或者对安装很模糊的话,第1步:我们在/var/ww ...
- APACHE两种域名跳转法简单完成重定向
当我们变更网站域名,或者申请多个域名指向一个网站的时候,这个时候我们就会用到域名跳转(或者叫域名重定向redirect.域名转向).下面用最简单的文字讲两种apache的域名跳转方法. 假设我们想把w ...
- apache用户认证、域名跳转、Apache访问日志(两种格式)
1.apache 设置,用户访问时 目录或文件的认证: 对目录的认证: <Directory /var/www/222> //指定认证的目录AllowOverride AuthConfig ...
- apache用户认证,ssl双向认证配置
安装环境: OS:contos 6.4 httpd:httpd-2.2.15-59.el6.centos.i686.rpm openssl:openssl-1.0.1e-57.el6.i686.rpm ...
- apache用户认证
创建一个目录abc:mkdir abc在此目录下建一个文件:12.txt正常情况下可以访问. 建立用户认证,从而使用户访问特定目录文件需要认证 在虚拟主机配置文件中即vim /usr/local/ap ...
- Apache 用户认证
基本认证(Basic) 摘要认证(Digest) 更安全 创建一个名为 users 的认证口令: htpasswd -c /usr/local/apache2/conf/users sam ...
随机推荐
- 什么是浮点型?什么是单精度浮点数(float)以及双精度浮点数(double)?
前言 作为一名java学习者,怎能不懂这些java基础中的基础呢?本文就带各位温顾温顾java浮点型.单精度浮点数.双精度浮点数. 浮点型 首先明确java中浮点型数据类型主要有:单精度float.双 ...
- Java虚拟机之垃圾回收
简述 Java与那些较传统的语言比如C++有个很大不同就是垃圾回收策略了.前者通常是虚拟机自动帮我们做了,而后者就需要我们手动来完成. Java虚拟机帮我们完成了垃圾回收,是不是意味着我们就不用完全去 ...
- 网络安全-主动信息收集篇第二章-三层网络发现之nmap和fping和Hping
nmap IP -sn nmap当目标IP在同一网段时,nmap会发送ARP包,当目标IP不在同一网段时nmap会发送ICMP的包. fping IP fping -g 参数支持对IP地址起始和结 ...
- [考试反思]1030csp-s模拟测试94:未知
排名也未知.第1或第5. 分数也未知,300或260. 人生真是大起大落... 啊啊啊啊啊我好感动啊竟然重测了一次----- 评测机怎么测怎么RE,本机怎么测怎么AC(任意编译指令,任意评测平台) 结 ...
- CSS(5)---通俗讲解盒子模型
CSS(5)---盒子模型 盒子模型四个关键字:内容(content).填充(padding).边框(border).边界(margin), CSS盒子模式都具备这些属性. 一.概念 1. 概念 盒子 ...
- CF600E Lomsat gelral——线段树合并/dsu on tree
题目描述 一棵树有$n$个结点,每个结点都是一种颜色,每个颜色有一个编号,求树中每个子树的最多的颜色编号的和. 这个题意是真的窒息...具体意思是说,每个节点有一个颜色,你要找的是每个子树中颜色的众数 ...
- Android 开发中是否应该使用枚举?
本文由咕咚发布在个人博客,转载请注明出处. 本文永久地址:https://gudong.name/2019/11/04/use-enum-or-not.html 在 Android 官方文档推出性能优 ...
- 使用AForge录制视频
使用AForge录制视频,基于Winform开发 (一)首先导入AForge包 需要先导入 using AForge.Video;using AForge.Video.FFMPEG; 两个工具包 (二 ...
- day5-列表专区
list 列表.类li = [1, 12, 9, "age", ["88", ["19", 10], "方法"], &q ...
- 关于Jvm的见解(二)
栈管运行,堆管存储!!! 栈呢,也叫作栈内存,主要管java程序的运行,在线程创建时创建,生命周期和线程一致,只要线程一结束,该栈就被GC,是线程私有的.基本类型的变量和对象的引用数据类型的变量都在栈 ...