天天看点

Apache用户认证;域名跳转;Apache访问日志

扩展 :

apache虚拟主机开启php的短标签   http://www.aminglinux.com/bbs/thread-5370-1-1.html 

1. 编辑第二个虚拟主机,设定Apache用户认证(访问网站需要用户密码认证):

[root@hao-01 ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

插入内容如下(设定指定网站访问认证参数如下,位置如图):

   <Directory /data/wwwroot/111.com>

       AllowOverride AuthConfig

       AuthName "111.com user auth"

       AuthType Basic

       AuthUserFile /data/.htpasswd

       require valid-user

2. -c自动创建生成密码文件,创建可访问用户名,自定义密码:

[root@hao-01 ~]# /usr/local/apache2.4/bin/htpasswd -c -m 密码文件  自定义用户

[root@hao-01 ~]# /usr/local/apache2.4/bin/htpasswd -c -m /data/.htpasswd hao

3. 第二次再建可访问用户名,自定义密码,不要再加-c选项,要不会覆盖掉密码文件:

[root@hao-01 ~]# /usr/local/apache2.4/bin/htpasswd  -m /data/.htpasswd hao1

4. 查看密码文件:

[root@hao-01 ~]# cat /data/.htpasswd

<a href="https://s3.51cto.com/wyfs02/M00/9D/64/wKiom1l_QgyBcGZ_AAAV3AJfHcs456.png" target="_blank"></a>

5. 检测虚拟机配置文件是否有错误:

[root@hao-01 ~]# /usr/local/apache2.4/bin/apachectl -t

6. 启动apache2.4/httpd:

[root@hao-01 apache2.4]# /usr/local/apache2.4/bin/apachectl  start

7. 重新加载配置文件(不会重启服务)

[root@hao-01 ~]# /usr/local/apache2.4/bin/apachectl  graceful

8. curl 访问111.com,查看是否访问成功?报错如下:

[root@hao-01 ~]# curl  -x127.0.0.1:80  111.com  -I

报错 :401(用户认证加密访问受限了)

9. 打开windows系统找到hosts文件,笔记本格式打开编辑:

<a href="https://s4.51cto.com/wyfs02/M00/9D/64/wKioL1l_QkKDOe1DAAAMI--KJpg905.png" target="_blank"></a>

(记得保存hosts记事本)

10. 在windows上,检查Linux服务器ip的80端口是否打开:

11. Linux服务器上打开80端口:

[root@hao-01 ~]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT

(关闭80端口:iptables -D INPUT -p tcp --dport 80 -j ACCEPT )

12. 再次在windows上,检查Linux服务器ip的80端口是否打开:

C:\Users\主内安详&gt;telnet 192.168.211.128 80

快捷键退出: Ctrl + ]

13. 在window游览器上,访问 虚拟主机2加密认证的111.com地址:

此时,报401,并让其登陆加密访问的用户密码,就是刚刚设定的!

<a href="https://s1.51cto.com/wyfs02/M01/9D/64/wKioL1l_QnfCvJcuAABVe2ly9l0314.png" target="_blank"></a>

14. 用curl命令,来访问111.com,-u用来指定用户名密码,此时就是200 ok成功!

此方法用于:主网站的下级网站不想被其他人访问时候,

增加的用户认证!具体步骤如下:

15. 编辑虚拟主机配置文件中第二个虚拟主机,针对单个文件进行认证:

增加内容(注意增加位置,如图):

   &lt;FilesMatch 123.php&gt;

   &lt;/FilesMatch&gt;

<a href="https://s4.51cto.com/wyfs02/M00/9D/64/wKiom1l_QqnxAf6_AAB-kVvxORE784.png" target="_blank"></a>

16. 检测虚拟机配置文件是否有错误:

17. 重新加载配置文件(不会重启服务)

18. 创建并编辑123.php在111.com目录下:

[root@hao-01 ~]# vim /data/wwwroot/111.com/123.php

添加内容:

&lt;?php

echo "123.php";

19. 访问111.com不会受限(设定了:访问111.com下123.php才会需要认证)!

20. 用curl命令,直接访问111.com/123.php,访问是受限的,

(因为针对这个123.php文件做了认证,需要-u跟用户名密码才可访问)

[root@hao-01 ~]# curl -x127.0.0.1:80 111.com/123.php -i

21. -u 选项跟用户名密码,200 ok则成功访问!

[root@hao-01 ~]# curl -x127.0.0.1:80 -uhao:admin 111.com/123.php -i

11.19 域名跳转(上)11.20 域名跳转(下)

1. 编辑虚拟主机配置文件,第二个虚拟主机更改做实验:

插入内容(插入位置如下图):

   &lt;IfModule mod_rewrite.c&gt;

       RewriteEngine on          RewriteCond %{HTTP_HOST} !^111.com$        RewriteRule ^/(.*)$ http://www.111.com/$1 [R=301,L]

2.  检测虚拟机配置文件是否有错误:

3. 重新加载配置文件(不会重启服务)

4. 查找apache是否加载了rewrite模块?

[root@hao-01 ~]# /usr/local/apache2.4/bin/apachectl -M |grep rewrite

5. 编辑httpd.conf文件:

[root@hao-01 ~]# vim /usr/local/apache2.4/conf/httpd.conf

查找rewrite,找到含有rewrite行,把这行前的#号删掉!

<a href="https://s1.51cto.com/wyfs02/M02/9D/64/wKiom1l_QwGh3R0kAAAfzXWlaUc422.png" target="_blank"></a>

6. 检测虚拟机配置文件是否有错误:

8. 再次查找apache是否加载了rewrite模块?

<a href="https://s4.51cto.com/wyfs02/M02/9D/64/wKioL1l_QyDgbDeBAAAFT7r3Ta0819.png" target="_blank"></a>

9. 用curl 命令访问别名域名,跳转到了设定跳转的域名下!

<a href="https://s1.51cto.com/wyfs02/M02/9D/64/wKiom1l_QzmS3_OEAABDW3B7aeY388.png" target="_blank"></a>

11.21 Apache访问日志

1. 两种日志格式:combined 、 commo

<a href="https://s4.51cto.com/wyfs02/M00/9D/64/wKioL1l_Q2jSJhS5AAASbDvFvt4522.png" target="_blank"></a>

2. 更改虚拟主机配置文件,把日志格式改为combined :

更改内容(更改访问日志格式):

commo改为:combined

<a href="https://s5.51cto.com/wyfs02/M01/9D/64/wKioL1l_Q4GT6-OTAAATui5KQhQ268.png" target="_blank"></a>

3. 检测虚拟机配置文件是否有错误:

4. 重新加载配置文件(不会重启服务)

5. 在Windows上,访问到 111.com/123.php网站,先把这个网站地址,发在其他博客或帖子中,再点击这个超链接,即可在服务器上记录上访问日志!

6. 查看Apache,combined格式的访问日志:

[root@hao-01 ~]# tail /usr/local/apache2.4/logs/111.com-access_log

由图看出,从51cto博客里页面,跳转到了这个111.com下的123.tmp地址

<a href="https://s5.51cto.com/wyfs02/M02/9D/64/wKioL1l_Q5eQR-JlAADGcJI4uIg437.png" target="_blank"></a>

本文转自 主内安详 51CTO博客,原文链接:http://blog.51cto.com/zhuneianxiang/1952422,如需转载请自行联系原作者