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访问日志的更多相关文章

  1. apache用户认证 域名跳转 Apache访问日志

  2. Linux CentOS7 VMware LAMP架构Apache用户认证、域名跳转、Apache访问日志

    一.Apache用户认证 vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //把111.com那个虚拟主机编辑成如下内容 <Virtu ...

  3. apache用户认证、默认主机、301跳转

    我更正论坛一个同学帖子(今天坑我一下午):原文http://www.apelearn.com/bbs/foru ... 3%BB%A7%C8%CF%D6%A4 apache用户认证.默认主机.301跳 ...

  4. apache用户认证访问机制(转)

    Apache服务器已经内置用户验证机制,大家只要适当的加以设置,便可以控制网站的某些部分要用户验证.前期准备,必须已经安装apache,如果还没安装,或者对安装很模糊的话,第1步:我们在/var/ww ...

  5. APACHE两种域名跳转法简单完成重定向

    当我们变更网站域名,或者申请多个域名指向一个网站的时候,这个时候我们就会用到域名跳转(或者叫域名重定向redirect.域名转向).下面用最简单的文字讲两种apache的域名跳转方法. 假设我们想把w ...

  6. apache用户认证、域名跳转、Apache访问日志(两种格式)

    1.apache 设置,用户访问时 目录或文件的认证: 对目录的认证: <Directory /var/www/222> //指定认证的目录AllowOverride AuthConfig ...

  7. 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 ...

  8. apache用户认证

    创建一个目录abc:mkdir abc在此目录下建一个文件:12.txt正常情况下可以访问. 建立用户认证,从而使用户访问特定目录文件需要认证 在虚拟主机配置文件中即vim /usr/local/ap ...

  9. Apache 用户认证

    基本认证(Basic) 摘要认证(Digest) 更安全 创建一个名为 users 的认证口令: htpasswd    -c   /usr/local/apache2/conf/users sam ...

随机推荐

  1. 货物移动BAPI:BAPI_GOODSMVT_CREATE报错提示“不能执行功能模块 MB_CREATE_GOODS_MOVEMENT”的原因

    在开发过程中,我们调用BAPI:BAPI_GOODSMVT_CREATE进行货物移动生成物料凭证时,出现了报错提示:“不能执行功能模块 MB_CREATE_GOODS_MOVEMENT”,如下图所示: ...

  2. vue cli 4.0.5 的使用

    vue cli 4.0.5 的使用 现在的 vue 脚手架已经升级到4.0的版本了,前两日vue 刚发布了3.0版本,我看了一下cli 4 和cli 3 没什么区别,既然这样,就只总结一下vue cl ...

  3. [考试反思]1001csp-s模拟测试(b):逃离

    如你所见,b组题,除了NC乱入直奔T2抢了我一个首杀以外A层学过FFT的人都没有参加. 竞争压力很小,题又简单,所以就造就了6个AK. 然而并不计入总分,我仍然稳在第二机房. T1lyl16分钟切掉我 ...

  4. Opencv python(3)| cv. VideoCapture.get() 参数介绍

    cv2.VideoCapture.get ()  的 (0-18)参数 cv2.VideoCapture.get(0)            视频文件的当前位置(播放)以毫秒为单位 cv2.Video ...

  5. nuxt.js 部署静态页面[dist]到gh-pages

    一. 1.添加package.json { "name": "nuxtweb001", "version": "1.0.0&quo ...

  6. jquery手指触摸滑动放大图片的方法(比较靠谱的方法)

    jquery手指触摸滑动放大图片的方法(比较靠谱的方法) <pre><!DOCTYPE html><html lang="zh-cn">< ...

  7. javascript JSMpeg.js 播放视频解决不用全屏也能播放(也支持自动播放哦)

    javascript JSMpeg.js 播放视频解决不用全屏也能播放(也支持自动播放哦) 缺陷就是 因为采用的是 MPEG1解码器 所以清晰度有点低 做直播可以考虑下 如果要清晰度高点 可以采取序列 ...

  8. Magicodes.Pay,打造开箱即用的统一支付库,已提供ABP模块封装

    Magicodes.Pay,打造开箱即用的统一支付库,已提供ABP模块封装 简介 Magicodes.Pay,是心莱科技团队提供的统一支付库,相关库均使用.NET标准库编写,支持.NET Framew ...

  9. VMware虚拟机添加5个RAID10磁盘并挂载

    1.打开虚拟机之前先添加硬盘设备 具体添加方法详见我https://www.cnblogs.com/Ghost-m/p/11707996.html这个博客 制作RAID需要用到madam命令 mdad ...

  10. 【SQL】安装后设置 sa账号登录

    1.windows身份验证登录管理员账户   2.找到sa账号双击  3.设置密码,启用 4.右键 属性 安全性   5.重启服务,sa账号登录   本地服务用  .     6.登录成功: