apache2.4版本配置ssl/https的那些坑

 

总有一些错误淬不及防,如果你在配置 apache2.4 上的 https过程中,看起来所有的配置都正确了,而且参考了众多文章还存在错误,那么只有一个可能,那就是 VirtualHost的监听的域名端口出错了.

是不是有点想发泄一下,昨晚就这一个问题,我配置了4个小时,最后一行一行代码删,才找到问题的点,也可以说,是自己对 VirtualHost 掌握的还不够.

解决方法只有一个:要么基于IP来做虚拟主机,要么基于名称来做虚拟主机,不要混用,不要混用,不然优先级绝对是一个大坑,而且推荐使用 基于名称来做,也就是 <VirtualHost *:443>

我原来的配置是

 

<VirtualHost localhost:443>

...

</VirtualHost>

<VirtualHost www.example.com:443>

...

</VirtualHost>

 

对于 VirtualHost,官方定于如下:

 

<VirtualHost addr[:port] [addr[:port]] ...> ... </VirtualHost>

也就是说,可以监听多个地址多个端口

对于 addr 这一段,官方是这么描述的

 

+ 虚拟主机的 IP

+ 域名的全称,不推荐

+ * 号,就是可以监听多个IP

+ _default_ 这个是 * 号的别名

 

重要的是要知道,VirtualHost有两种配置方法,基于IP地址的虚拟主机和基于名称的虚拟主机,而且,两者不能混用,是的,两者不能混用

我一开始掌握的只是还是好好的,后来觉得可以填上IP啊,就填了。一旦填上IP,优先级就坑爹了

然后,官方的下面这段话也很有用,我觉得是整个文档里最有用的一段话了:

如果你要调试虚拟主机配置,你会发现 Apache 的命令行参数 -S 非常有用。即输入以下命令:
/usr/local/apache2/bin/httpd -S
这个命令将会显示 Apache 是如何解析配置文件的。仔细检查 IP 地址与服务器名称可能会帮助你发现配置错误

转载于:https://my.oschina.net/zhouyuntai/blog/1649726

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值