共计 1245 个字符,预计需要花费 4 分钟才能阅读完成。
实验背景:apache 虚拟主机有两个域名 111.com 222.com 其中 222.com 访问的时候跳转到 111.com,并且给该虚拟主机做了访问控制,只允许 127.0.0.1 访问。
问题:当访问 222.com 时,它是先跳转到 111.com,还是直接 403 呢?
打开 apache 中虚拟主机配置文件:vim /usr/local/apache2/conf/extra/httpd-vhosts.conf,可以看到当前配置如下(没做访问控制措施):
我们现在在以上配置文件中加入域名跳转和访问控制措施,如下图:
然后,保存退出!查看 apache 状态和刷新命令:
apachectl –t ; apachectl graceful
需要注意的是,在做域名跳转时一定要确保系统有 rewrite 模块!查看命令和结果如下:
由于在 LAMP 搭建过程中,apache 要多次重启和检查,本人建议大家做个软连接比较方便,可以参考如下命令:ln –s /usr/local/apache2/bin/apachectl /usr/bin
接下来我们进行测试,结果如下:
如果你做了用户登入认证,那么要关闭再进行测试,否则会失败!(带颜色的部分前面加 #)
结果是都能访问的。
此时可能会怀疑,访问控制的位置是在下面,所以调换位置:
一样的效果。所以得出结论。
结论:301 跳转优先级会高于访问控制!
CentOS6.8 编译安装 Apache2.4.25、MySQL5.7.16、PHP5.6.29 http://www.linuxidc.com/Linux/2016-12/138993.htm
CentOS 6.6 下安装 Apache 2.2.31 http://www.linuxidc.com/Linux/2017-02/140803.htm
Apache 配置多站点访问及二级域名配置 http://www.linuxidc.com/Linux/2017-03/141339.htm
Ubuntu 16.04 LTS 安装 Apache2+PHP7.0+MySQL+phpMyAdmin 图文详解 http://www.linuxidc.com/Linux/2017-02/140098.htm
Apache 配置 https http://www.linuxidc.com/Linux/2017-02/140801.htm
Linux 下 Apache 安装及实例 http://www.linuxidc.com/Linux/2017-02/140800.htm
Apache2.4.6 服务器安装及配置 http://www.linuxidc.com/Linux/2017-01/140006.htm
Ubuntu 16.04 下搭建 Web 服务器 (MySQL+PHP+Apache) 教程 http://www.linuxidc.com/Linux/2017-01/139570.htm
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-03/141550.htm