Undertow配置阿里云免费证书实现整站改版 301_Java虚拟主机HTTPS迁移
Java 主机启用 HTTPS 并把 HTTP 流量 301 到 HTTPS,是站点上线前必须走完的一步。Undertow 容器加载 阿里云免费证书 后,80 端口的请求要统一跳到 443,避免同一页面出现 HTTP 与 HTTPS 两个版本分散权重。
把 阿里云免费证书 转成 Undertow 能识别的格式,PFX 直接用 keytool 导入 JKS,PEM 先用 OpenSSL 合成 PFX 再导入。密钥库文件放在 conf 目录下,文件权限设为 600,防止被其他用户读取。
配置参考(Spring Boot application.yml): ``` server: port: 443 ssl: key-store: classpath:域名.pfx key-store-password: 证书密码 key-store-type: PKCS12 ```
Undertow 的 443 Connector 配置要点:SSLEnabled="true",scheme="https",secure="true",keystoreFile 与 keystorePass 正确填写。80 端口 Connector 保留并加 redirectPort="443",配合 web.xml 的 security-constraint 实现强制 HTTPS。
web.xml 加 security-constraint,web-resource-collection 里 url-pattern 填 /*,auth-constraint 留空,user-data-constraint 里 transport-guarantee 填 CONFIDENTIAL。容器检测到请求走 HTTP,会自动返回 302 或 301 跳到 HTTPS。要严格 301,配合 redirectPort 或在反代层做 Rewrite。
配置完成后用 浏览器地址栏小锁 检查。curl -I http://域名 返回 301,Location 指向 https 地址;curl -I https://域名 返回 200,证书链完整。浏览器访问看地址栏小锁,点进去看证书有效期与颁发者。SSL Labs 跑分达到 A 才算合格。
HTTPS 对百度排名有明确加成,收录迁移 要同步做。页面里的 canonical 指向 HTTPS 版本,sitemap 全部换成 HTTPS 链接, robots.txt 里的 Sitemap 地址也更新。旧 HTTP 外链不用主动改,301 会把权重带过来,强行改外链反而可能触发异常。

更新时间:2026-09-02 13:48:48
上一篇:php网站后台栏目管理_添加编辑排序删除栏目(迁移完整流程)