Wamp环境Apache报错VirtualHost所用443端口非Listen端口问题咨询
问题原因
- 核心报错根源:Apache全局配置里缺失
Listen 443指令,服务根本没开启443端口的监听,所有绑定443的VirtualHost都会触发"Not a Listen port"提示。你贴出来的httpd-ssl.conf内容明显残缺,默认自带的Listen 443配置、SSL全局参数段都丢失了,只剩几行证书路径和站点基础配置。 - 配置加载隐患:你贴的
httpd.conf里只引入了httpd-ssl.conf,没看到自定义https-vhosts.conf的引入规则。虽然运行日志里已经识别到testwordpress站点的证书问题,说明这个vhost文件大概率是被其他配置项自动加载了,但最好手动确认加载路径,避免后续配置不生效。 - 日志里的两个SSL告警和本次端口报错无关:是因为你直接把CA根证书当站点证书用了,证书本身是签发证书用的CA证书,不是给
testwordpress域名签发的终端服务器证书,域名标识和ServerName不匹配才出的警告,不影响本次端口问题排查。
解决方案
- 补全端口监听规则
打开httpd-ssl.conf,在所有VirtualHost配置之前加一行:
这行是HTTPS服务的基础配置,明确告诉Apache要在443端口启动SSL协议监听,加完就能解决端口未监听的核心报错。Listen 443 https - 补全httpd-ssl.conf缺失的全局SSL配置
你现在的httpd-ssl.conf内容不全,除了Listen规则,还要补上默认的SSL全局参数,放在Listen行后面即可:
缺这些参数就算端口起来了,SSL握手也容易出异常。SSLCipherSuite HIGH:!aNULL:!MD5 SSLPassPhraseDialog builtin SSLSessionCache "shmcb:${SRVROOT}/logs/ssl_scache(512000)" SSLSessionCacheTimeout 300 - 确认自定义vhost加载路径
打开httpd.conf,找到配置引入的区块,手动加上你自定义的https-vhosts.conf的绝对路径引入规则,避免WAMP自动加载逻辑出问题:
路径替换成你本地该文件的实际存放路径即可。Include "c:/wamp64/bin/apache/apache2.4.51/conf/extra/https-vhosts.conf" - 校验配置并重启服务
打开cmd进入Apache的bin目录,执行配置校验命令:
返回httpd -tSyntax OK就说明配置没问题,重启Apache服务,VirtualHost列表里的443端口报错就会消失。 - (可选)修复证书告警
要消除日志里的证书警告,不要直接用CA根证书配置站点,重新给testwordpress域名签发终端服务器证书,确保证书的SAN/CommonName字段包含testwordpress,和VirtualHost里的ServerName一致即可。
内容的提问来源于stack exchange,提问作者Vincent Roye
相关产品推荐
相关产品推荐

