云服务器ECS HTTPS改造全攻略:SSL证书申请部署全站加密实操手册

简介: 现如今互联网安全标准持续提升,HTTPS加密已经不再是大型网站的专属配置,普通个人站点、企业官网、小程序后端接口都必须完成HTTPS改造。没有开启HTTPS的网站,浏览器地址栏会标记不安全标识,不仅会影响访客信任度,同时还会对搜索收录、小程序对接、第三方API调用产生直接阻碍。很多运维新手在ECS服务器做HTTPS改造时,经常遇到证书签发失败、443端口无法访问、重定向循环、混合内容报错等一系列问题,看似简单的证书部署,实际落地过程中会踩大量隐形坑点。本文完整梳理从SSL证书申请、域名所有权验证、证书下载上传、Web服务配置、安全组端口放行、HTTP强制跳转HTTPS、全站混合内容修复、上线验

现如今互联网安全标准持续提升,HTTPS加密已经不再是大型网站的专属配置,普通个人站点、企业官网、小程序后端接口都必须完成HTTPS改造。没有开启HTTPS的网站,浏览器地址栏会标记不安全标识,不仅会影响访客信任度,同时还会对搜索收录、小程序对接、第三方API调用产生直接阻碍。很多运维新手在ECS服务器做HTTPS改造时,经常遇到证书签发失败、443端口无法访问、重定向循环、混合内容报错等一系列问题,看似简单的证书部署,实际落地过程中会踩大量隐形坑点。本文完整梳理从SSL证书申请、域名所有权验证、证书下载上传、Web服务配置、安全组端口放行、HTTP强制跳转HTTPS、全站混合内容修复、上线验证以及故障排查的整套实操流程,附带完整可直接运行的代码命令,帮助零基础用户完成ECS网站全站HTTPS加密改造工作。

在正式开始HTTPS改造之前,需要梳理前置条件,避免后续操作反复返工。首先需要准备已经完成解析的域名,域名解析记录已经指向ECS实例公网IP地址;其次ECS实例操作系统为CentOS、Ubuntu等主流Linux发行版本,Web服务已经正常运行,80端口HTTP访问网站可以正常打开;同时需要拥有服务器SSH登录权限,能够执行命令行操作;最后确认ECS安全组规则,后续需要开放443端口TCP协议入方向权限。如果网站前端接入负载均衡、CDN产品,证书部署逻辑会发生变化,证书需要配置在负载均衡或者CDN层面,后端ECS只需要处理HTTP流量即可,本文教程针对没有中间代理、ECS直接对外提供Web访问的业务场景。详情👉访问阿里云 数字证书管理服务(原SSL证书) 平台了解。

第一步是SSL证书申请与域名验证。数字证书管理服务控制台可以申请DV类型SSL证书,DV证书依靠域名所有权校验完成签发,适合绝大多数个人网站与中小企业官网。免费DV证书存在有效期限制,适合测试站点、个人博客;企业业务系统、电商站点建议选择OV或者EV等级付费证书,具备更高安全等级与可信度。进入证书管理页面,选择对应证书规格,填写需要加密的域名,包含主域名以及www子域名,CSR生成方式建议选择系统生成,平台托管私钥,后续下载证书文件直接使用,避免手动生成CSR出现私钥丢失问题。

提交证书申请之后,核心环节是域名所有权验证,只有验证通过证书才会签发。主流验证方式分为DNS验证和文件验证,DNS验证适用性更广,推荐优先选择。提交审核之后控制台会给出一条TXT类型解析记录,主机记录一般为_dnsauth,附带一串随机记录值。登录域名解析控制台,新增TXT解析记录,复制粘贴对应的主机记录与记录值,TTL保持默认数值。解析记录新增之后,DNS全球生效存在时间延迟,通常数分钟到半小时不等,完成解析之后回到证书控制台点击验证按钮,状态更新为已签发代表证书申请成功。如果域名解析不在同一平台,同样可以使用DNS验证;当无法修改域名解析记录时,可以选择文件验证,将指定验证文件上传至网站根目录,通过访问特定路径完成域名所有权校验,等待系统检测通过即可签发证书。详情👉访问阿里云 数字证书管理服务(原SSL证书) 平台了解。

证书签发完成之后,需要下载适配Web服务器类型的证书压缩包。点击下载按钮,根据自身Web服务选择对应的版本,Nginx、Apache、Tomcat所需要的证书文件格式各不相同,选错格式会导致后续部署报错。解压下载压缩包,Nginx版本压缩包内包含两个核心文件,.pem后缀证书文件,完整证书链文件,.key后缀私钥文件,私钥文件属于敏感资源,禁止对外泄露,做好本地备份保存工作。

接下来将证书文件上传至ECS服务器,通过SSH连接登录ECS实例,创建专门存放证书的目录,不建议直接放在网站业务目录下,防止误删除。执行下面命令创建证书存放文件夹:

mkdir -p /etc/nginx/cert

使用SCP工具、WinSCP等工具,将本地解压后的pem证书文件与key私钥文件上传到/etc/nginx/cert目录。上传结束之后修改文件权限,缩小文件访问权限范围,提升服务器安全等级,防止普通用户读取私钥文件:

chmod 600 /etc/nginx/cert/*.pem
chmod 600 /etc/nginx/cert/*.key

执行ls命令确认两个文件完整存在,没有出现文件损坏、缺失情况:

ls -l /etc/nginx/cert/

证书文件准备完毕,必须确认ECS安全组已经放行443端口TCP入方向访问权限,这是新手高频踩坑点。即使Web服务配置全部正确,安全组没有开放443端口,外部网络依旧无法访问HTTPS服务。进入ECS实例安全组配置页面,添加入方向规则,协议TCP,端口443,授权对象按需配置,公网全量访问填写0.0.0.0/0。同时服务器内部防火墙也需要放行端口,CentOS系统firewalld防火墙放行命令:

firewall-cmd --add-port=443/tcp --permanent
firewall-cmd --reload

Ubuntu系统ufw防火墙放行端口:

ufw allow 443/tcp
ufw reload

端口连通性可以执行命令测试443端口监听状态:

ss -tlnp | grep 443

完成端口准备之后,修改Nginx配置文件,实现443端口SSL监听。找到站点对应的conf配置文件,一般存放路径/etc/nginx/conf.d/,编辑站点配置文件:

vim /etc/nginx/conf.d/site.conf

写入完整HTTPS服务配置,配置中包含证书路径、TLS协议版本、加密套件、网站根目录等参数,禁用老旧不安全TLS1.0、TLS1.1协议,只保留TLSv1.2、TLSv1.3,兼顾安全性与设备兼容性,同时开启HTTP2提升访问性能。

server {
    listen 443 ssl http2;
    server_name example.com www.example.com;
    ssl_certificate /etc/nginx/cert/fullchain.pem;
    ssl_certificate_key /etc/nginx/cert/privkey.key;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;

    location / {
        root /usr/share/nginx/html;
        index index.html index.htm index.php;
    }
}

配置完成之后,需要配置80端口HTTP全部301永久重定向跳转至HTTPS,实现全站加密,所有访问HTTP的请求自动切换加密协议。新增独立server块专门处理80端口请求,不要在443服务块内做跳转,避免循环重定向问题。

server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://$server_name$request_uri;
}

修改完配置文件,千万不要直接重启Nginx,优先执行配置语法校验命令,如果配置存在语法错误,直接重启会造成网站服务直接中断不可访问。校验命令:

nginx -t

输出syntax is oktest is successful代表配置语法没有问题,重载Nginx配置使新配置生效,重载不会中断现有业务连接:

systemctl reload nginx

如果业务使用Apache Web服务,部署逻辑大体相似,创建证书存放目录,上传证书文件,编辑ssl虚拟主机配置文件。

mkdir -p /etc/apache2/ssl

Apache 443虚拟主机配置示例:

<VirtualHost *:443>
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot "/var/www/html"
    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/fullchain.pem
    SSLCertificateKeyFile /etc/apache2/ssl/privkey.key
    SSLProtocol -all +TLSv1.2 +TLSv1.3
</VirtualHost>
<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    Redirect permanent / https://example.com/
</VirtualHost>

配置完成校验Apache配置,重载服务:

apache2ctl configtest
systemctl reload apache2

配置重载完成之后,进入全站验证环节,不能仅仅依靠浏览器访问,需要多维度检测HTTPS是否真正生效。首先使用curl命令在服务器本地测试跳转逻辑,查看返回状态码,确认HTTP访问返回301跳转:

curl -v -L http://example.com

使用openssl命令测试SSL握手情况,排查证书链、TLS握手异常:

openssl s_client -connect example.com:443

在本地电脑浏览器清除缓存,访问https://域名,观察地址栏锁图标是否正常显示,没有不安全警告。这里需要重点处理混合内容问题,这是HTTPS改造中非常普遍的故障,网站虽然开启HTTPS,但是页面内部图片、CSS、JS、字体等静态资源依旧写死HTTP地址,浏览器出于安全策略拦截资源,页面样式错乱,图片无法加载。按下F12打开开发者工具,切换到控制台面板,会打印混合内容警告,定位所有HTTP协议资源链接,修改模板、程序配置,将HTTP链接替换为HTTPS协议或者使用相对路径,消除混合内容告警。

完成基础访问验证之后,还要梳理证书续期机制,免费DV证书有效期时间短,到期之后证书失效,网站会直接报证书不安全。免费证书到期前需要重新申请证书,下载新证书文件,上传覆盖服务器旧证书,再重载Web服务配置。如果业务使用付费证书,也要设置到期提醒,提前完成续费更新,避免业务中断。

接下来梳理HTTPS改造高频故障与排错方案,大部分报错都可以通过下面步骤定位解决。

故障一:浏览器提示连接不安全,证书不受信任。首先确认证书绑定域名和访问域名完全一致,证书状态是已签发,没有过期;其次确认Nginx配置里面ssl_certificate使用完整证书链pem文件,不是只上传域名证书,缺少中间证书会导致信任链断裂;清除浏览器缓存重新测试,部分浏览器会缓存旧证书信息。

故障二:ERR_TOO_MANY_REDIRECTS重定向循环。该报错代表请求在HTTP和HTTPS之间来回跳转。排查Nginx配置,确认443端口server块内部没有写return跳转http规则;检查是否存在多个配置文件同时配置重定向,多条跳转规则叠加造成循环;如果网站部署反向代理,需要配置X‑Forwarded‑Proto头部,后端程序识别原始访问协议,避免程序内部再次跳转。

故障三:HTTPS完全无法访问,访问超时拒绝连接。第一步检查安全组443端口是否放行,服务器本地防火墙是否开放端口;执行ss命令确认Nginx正常监听443端口;检查Nginx配置listen指令是否携带ssl参数,漏写ssl参数,443端口会以普通HTTP协议监听,访问HTTPS直接握手失败。

故障四:Nginx reload失败,启动报错SSL_CTX_use_PrivateKey错误。该报错代表证书pem文件和key私钥文件不匹配,检查下载证书版本是否选对Web服务器类型,上传的文件是否混淆,重新下载证书包解压上传,核对文件路径配置无误。

完成HTTPS改造上线之后,还有一些进阶优化建议。可以配置HSTS响应头,强制浏览器后续访问直接使用HTTPS协议,减少HTTP跳转的开销,在Nginx的443的server块内部增加头部配置:

add_header Strict‑Transport‑Security "max‑age=31536000; includeSubDomains" always;

HSTS配置上线前务必充分测试,一旦浏览器缓存HSTS策略,短时间内无法回退HTTP访问,确认业务稳定之后再启用。同时可以使用专业SSL检测工具,对站点做安全扫描,检查TLS配置、证书链完整性,拿到安全评级,持续优化加密安全等级。

很多用户在做HTTP迁移HTTPS时忽略业务侧适配,网站程序、后台管理系统、接口服务都需要适配HTTPS环境。数据库、缓存配置里面写死的网站域名地址,需要全部更新为HTTPS;API接口、小程序回调地址、第三方回调域名全部替换为HTTPS链接;同时做好URL变更记录,对于原有HTTP页面做好301永久跳转,减少对搜索收录的负面影响。正式上线之前强烈建议先在测试环境完整复现整套HTTPS部署流程,修复混合内容、接口异常等各类问题,确认全部业务功能正常,再同步到生产环境,规避直接修改线上业务带来的业务风险。

整体来看ECS全站HTTPS改造,技术本身并不复杂,但整套流程涉及证书申请、域名验证、云服务器网络安全组、Web服务配置、程序资源适配、证书续期多个环节,任何一个小细节疏漏就会引发访问故障。完整走完证书申请、下载上传、端口放行、Web服务SSL配置、301强制跳转、混合内容修复、多维度验证这一套完整流程,才能真正实现全站HTTPS加密,充分发挥SSL证书的安全防护能力,保障网站数据传输安全,同时满足浏览器标准、第三方业务对接的硬性要求。运维人员日常维护中,需要建立证书到期监控提醒机制,定期检查证书有效期,提前完成证书更新,避免证书过期造成业务访问故障。

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
目录
相关文章
|
21天前
|
人工智能 Linux API
Codex接入DeepSeek‑V4‑Flash完整实操:两套方案补齐识图能力保姆级教程
在AI编程Agent工具生态当中,Codex凭借强大的本地工程读写、代码修改、命令执行能力,成为开发者日常项目调试、代码重构、问题排查的常用客户端。DeepSeek‑V4‑Flash作为一款高性价比的文本大模型,拥有超大上下文窗口,Agent任务规划、代码生成、逻辑推演表现十分突出,API调用成本低廉,非常适合作为Codex底层推理基座。但是该模型属于纯文本推理模型,原生并不支持图像输入,当开发者把报错截图、UI界面截图、架构图、数据图表粘贴进会话,模型会直接提示无法解析图片内容,很多开发场景就此被卡住。
331 1
|
21天前
|
人工智能 测试技术 Shell
OpenCode开源AI编程助手实操:替代Claude Code对接百炼完整教程
在AI编程Agent快速普及的当下,很多开发者习惯使用闭源编程代理工具完成项目重构、bug修复、新功能开发,但闭源工具存在诸多现实痛点。一方面工具完全绑定自家模型,无法自由切换推理后端;另一方面账号风控策略严苛,容易出现账号受限、调用中断的情况,企业内部开发还会面临代码数据外送带来的数据安全风险。OpenCode作为一款开源AI编程代理框架,被很多开发者视作Claude Code的优质替代方案,它不绑定任何大模型厂商,支持对接云端大模型服务,也可以接入本地私有化部署模型,同时完整复刻终端Agent的文件读写、命令执行、项目分析等核心能力,搭配百炼平台的各类代码大模型,就可以搭建一套完全自主可控
216 1
|
21天前
|
缓存 前端开发 测试技术
通义千问Qwen3.7 Plus与Max实测对比:多模态能力、推理表现与性价比深度解析
在大模型应用落地的过程中,很多开发者会陷入选型困境,同样属于Qwen3.7系列的两款主力基座Qwen3.7‑Max与Qwen3.7‑Plus,都具备百万级超长上下文窗口,支持长周期Agent智能体运行,但二者在模态支持、推理侧重、计费成本、实际业务表现上存在明显分化。不少开发者只看到参数规格相近,直接盲目选用高价Max,造成业务调用成本成倍上涨;也有部分业务场景对纯文本硬核推理要求极高,选用Plus之后遇到复杂逻辑任务出现能力瓶颈。本文将从底层架构、多模态能力、基准实测数据、代码Agent表现、计费性价比、真实业务场景、API实操调用、选型避坑多个维度,完整拆解两款模型的差异,帮助个人开发者、
225 1
|
21天前
|
移动开发 编解码 运维
想做短剧出海?搭建自主海外短剧平台需要注意哪些问题?
想自主搭建海外短剧平台?本文系统梳理从需求定位、模块化架构(四层设计)、五步落地流程,到本地化适配、多端支持、合规支付与安全运维的全流程方案,助企业低成本、高效率打造可控、可扩展的自有短剧平台。(239字)
|
21天前
|
缓存 人工智能 JSON
阿里云百炼通义千问Qwen3.7‑Max全面解析:核心能力、技术特性与订阅使用指南
随着AI智能体应用持续走向生产落地,普通对话模型已经很难胜任大型代码库重构、多步骤复杂业务流程、长时间自主任务执行等工作,行业对具备深度逻辑推理、超长上下文记忆、稳定工具调用能力的基座模型需求持续上涨。Qwen3.7‑Max作为通义千问系列面向Agent场景打造的旗舰纯文本基座,依托MoE混合专家架构,把设计重心放在长周期自治任务、硬核逻辑推理、大规模软件工程任务上,在各类编程Agent、复杂推理公开评测榜单当中取得亮眼成绩,通过百炼平台对外提供API调用服务,支持按量计费、Token Plan、Coding Plan多种订阅模式,是企业构建私有Agent系统、复杂代码自动化工作流的重要选择。
173 1
|
21天前
|
人工智能 JavaScript API
阿里云百炼CLI全解:命令行工具接入AI Agent实操与完整能力指南
在AI Agent快速迭代的开发环境中,开发者经常会遇到一个现实难题:不同AI智能体框架对接云端大模型、知识库、多模态生成工具时,需要反复编写接口代码,处理鉴权、请求封装、返回解析、异常重试等大量重复逻辑。每切换一套Agent框架,就要重新适配一整套API调用逻辑,不仅消耗大量开发时间,还容易出现鉴权不一致、参数不兼容、多工具能力无法复用等问题。百炼CLI作为官方开源的命令行工具,把平台上百款大模型、知识库检索、联网搜索、图像视频生成、语音处理等能力全部封装为终端可直接调用的指令,原生面向各类AI Agent做适配,支持脚本调用、CI流水线集成、本地Agent框架插件接入,大幅降低AI智能体的
124 1
|
21天前
|
人工智能 自然语言处理 数据可视化
AI驱动下的BI选型:大数据量、实时性与可视化的三维评估模型
本文提出AI驱动的BI选型三维评估模型——聚焦大数据量处理、实时响应性能与可视化表达能力。以瓴羊Quick BI为例,解析其云原生架构支撑十亿级秒级查询、智能引擎实现流批一体实时分析、AI Agent赋能自然语言生成与智能可视化,助力企业高效决策。
|
21天前
|
SQL 人工智能 分布式计算
阿里云大数据 AI 产品月刊-2026年7月
阿里云大数据& AI 产品技术月刊【2026 年 7 月】,涵盖 7 月技术速递、产品和功能发布、市场和客户应用实践等内容,帮助您快速了解阿里云大数据& AI 方面最新动态。
|
22天前
|
存储 人工智能 运维
新版无影云电脑全功能解析:AI 智能体、运维管控与 API 实操教程
随着远程办公、研发安全沙箱、AI智能体运行环境的业务需求持续增长,传统物理PC和老旧云桌面方案逐渐暴露出硬件迭代慢、批量运维繁琐、数据泄露风险高、AI任务算力不足等一系列痛点。新版无影云电脑作为一套完整的云端桌面服务平台,重构底层调度架构,在原有云桌面基础之上新增AI智能体运行环境、批量运维能力、镜像在线制作、精细化安全策略、多终端体验优化以及完备开放API体系,既能够满足企业大规模办公桌面交付,也可以作为Agent程序7×24小时不间断运行的专属算力容器,兼顾普通办公、图形设计、程序开发、AI自动化任务等多元化业务场景。整套平台将计算、存储全部放置云端,本地终端仅负责画面渲染与输入输出,原始
140 0
|
21天前
|
人工智能 弹性计算 API
阿里云服务器选购实操:轻量、ECS、GPU、AI云产品规格解析与性能实测
在云计算落地的过程中,很多开发者、小微企业以及AI从业者都会面临算力选型难题。面对轻量应用服务器、ECS弹性云服务器、GPU加速实例以及各类AI云产品,很多人分不清产品定位,盲目追求高配,造成预算浪费;或是选择配置过低,业务上线之后频繁卡顿、推理超时,影响项目正常推进。本文将完整拆解四类算力产品的定位、适用业务场景,梳理不同计费模式的价格策略,同时附上性能实测方法与实操命令,帮助不同需求的用户完成合理选型,兼顾业务稳定性与成本可控。
120 0

热门文章

最新文章