1. 概要(Executive Summary)
网站维护不是可有可无的附加服务,而是让服务器、域名、SSL 证书和 CMS 组成的系统持续正常运行所需的最低运营成本。大家都知道,汽车买来后从不更换机油会发生什么。网站也会以同样的方式逐渐损坏,只是过程不容易被看到。
先直接回答网站维护费用的问题。以韩国中小企业网站为例,按月维护通常约为每月 5 万至 50 万韩元。仅做内容修改时接近下限,包含安全检查、监控和故障响应时则接近上限。实际报价会因网站规模和服务商而有很大差异,因此应把这个范围当作看懂报价的参考,而不是固定标准。第 5 章会详细说明费用结构。
本文回答三个问题:网站无人维护后究竟会发生什么;最低限度的安全措施应做到哪里;如果交给服务商,合同中要写清什么。相关内容分别见第 2 章、第 3 章和第 4 至第 6 章。
核心要点
网站制作费是一次性支出,维护费则用于保护这笔投资。花费数百万韩元制作的网站,一旦 SSL 证书过期,就会消失在“您的连接不是私密连接”的警告页面之后。
事故发生后的恢复成本总会超过预防成本。与清除恶意代码、重建被入侵网站和恢复客户信任所需的时间与费用相比,每月数万韩元的定期检查是一份很便宜的保险。
2. 网站长期无人维护会发生什么
无人维护的网站会慢慢老化,直到某一天以事故的形式爆发。过程通常也很相似:没有人关注时证书过期,自动化机器人进入使用旧版插件的网站,域名续费邮件躺在垃圾箱里直到错过期限。下面逐项说明。
2.1 浏览器先把访客挡在门外:SSL 过期
SSL 证书过期后,访客看到的不是网站,而是整页的“您的连接不是私密连接”警告。不了解公司内部情况的人只会把它理解为“危险网站”,然后返回并且不再访问。
Let’s Encrypt 免费证书的有效期为 90 天,因此必须设置自动续期。付费证书也可能因为付款负责人更换或续费邮件被忽略而过期。如果没有明确指定续期负责人,网站迟早会出现警告页面。
2.2 旧版 CMS 是公开的入侵路线
认为黑客专门盯上了自己公司通常是误解。现实是,自动化机器人会扫描整个互联网,寻找仍保留已知漏洞的旧版网站。WordPress 插件的安全缺陷一旦公布,未修补的网站就像没有锁门的仓库。
入侵后可能发生多种问题:植入 Web Shell 控制服务器,在正文中隐藏指向赌博或成人网站的垃圾链接,或把访客重定向到其他页面。运营者往往数月后才收到“搜索公司名称时出现奇怪页面”的反馈并发现问题。
2.3 域名过期后可能再也拿不回来
域名不是永久所有的资产,而是持续续费的使用权。错过续费并经过宽限期后,第三方可能注册这个地址。常见原因包括最初付款的银行卡已经失效、接收续费提醒的员工已经离职,或注册邮箱不再使用。服务器可以花钱重建,但失去的域名有时花多少钱也拿不回来。多年积累的搜索曝光,以及印在名片和招牌上的网址会一次全部失效。
2.4 过时信息会悄悄损害信任
即使没有重大事故,无人维护的痕迹也会直接出现在访客眼前:三年前的“最新消息”、仍留在组织架构中的离职员工、点击后显示 404 的菜单,以及早已更换的电话号码。访客首先会怀疑公司是否还在营业。在合作方事前会先查看官网的时代,过时网站有时比没有网站更糟。
2.5 搜索引擎也能看出网站无人维护
搜索排名也会随之下降。失效链接、响应缓慢、SSL 过期和长期不更新的内容,都是搜索引擎的负面信号。网站被入侵并生成垃圾页面时更加严重。Google 可能在搜索结果中显示“此网站可能遭到黑客攻击”,甚至搜索公司名称时,赌博关键词页面会排在真正的公司页面前面。清除恶意代码、申请重新审核并恢复排名可能需要数月。
问题往往一起出现
如果没有人发现 SSL 已过期,那么网站很可能也没有备份和监控。管理缺口通常不会只影响一个地方。
因此,很多网站入侵后的恢复委托最后都变成“因为没有备份,只能从头重做”的项目。企业支付的不是恢复费,而是第二次制作费。
3. 安全基础:从 SSL 到备份
中小企业网站做好五项基础工作,就能避免大多数事故:持续维护 HTTPS、备份并测试恢复、管理管理员账号、及时更新,以及使用 Web 应用防火墙。这里不是在讨论昂贵的企业安全产品,而是当前服务器上就能实施的措施。
3.1 HTTPS 不是开启一次,而是持续维护
网站制作时启用 SSL 并不代表工作已经结束。需要确认三件事。
- 确认自动续期正常:使用 Let’s Encrypt 时,检查续期脚本(cron)是否真正运行,并确认最近一次成功日志
- 把过期提醒发送到多个渠道:提前 30 天的提醒不要只发到某位员工的邮箱,还应发送到公共邮箱或团队消息频道。即使负责人变更,提醒也必须继续有效
- 续期后确认实际生效:有些情况是证书文件已经更新,但 Web 服务器未重新加载,浏览器仍显示过期。续期后应在浏览器中检查实际到期日
3.2 备份真的能够恢复吗?
从未恢复过的备份,不能证明它真的可用。存在一个备份文件,与能够用它恢复网站,是两回事。实际事故中经常到当天才发现数据库导出不完整、只备份了文件却没有数据库,或压缩包根本无法解开。
- 文件和数据库一起备份:网站由源文件和数据库两部分组成,只保存其中一项无法完整恢复
- 保存在服务器之外:同一台服务器上的备份会在服务器故障或被入侵时一起消失,应复制到其他服务器或云存储
- 进行恢复演练:每季度至少一次,把备份真正恢复到测试环境。所需时间就是发生故障时实际的恢复时间
3.3 管理员账号:成本最低的入侵路线
自动化机器人的第一次尝试通常不是复杂漏洞,而是登录。它们会对 admin 等用户名反复尝试常见密码。仅做好账号管理,就能关上一扇很大的门。
- 不要使用 admin 或 administrator 作为用户名;大量暴力尝试从猜测用户名开始
- 立即删除离职员工和合作结束服务商的账号,并每季度整理一次账号列表
- 为管理后台启用双重验证,并在条件允许时限制访问 IP
- 不要让多人共用一个管理员账号,否则事故发生后无法追踪是谁做了什么
3.4 推迟更新的代价
需要更新的不只有 CMS 核心和插件,还包括服务器上的 PHP 等运行环境。每个 PHP 版本都有安全支持期限。例如 PHP 7.4 在 2022 年 11 月后已经停止接收安全补丁。在失去支持的版本上运行网站,出现新漏洞时也没有补丁可装。
担心“更新后网站会不会出问题”很正常,但按正确顺序操作就能控制风险:先备份,再更新,最后检查主要页面和功能。每月重复这三个步骤,正是维护合同中“更新”项目应包含的工作。
3.5 Web 应用防火墙没有想象中难
Web 应用防火墙(WAF)会在流量到达网站前,过滤符合攻击模式的请求。它并非大型企业专属。Cloudflare 免费方案也提供基础攻击防护和流量过滤。韩国 KISA 还面向中小企业提供免费 Web 应用防火墙 CASTLE 和 Web Shell 检测工具 WHISTL。许多托管服务商也提供自有 WAF,可先检查现有套餐。
目标不是绝对安全,而是不再成为最容易攻击的目标
任何安全措施都无法阻止 100% 的入侵,但自动化机器人会优先攻击最薄弱的网站。做好这五项基础工作后,网站在攻击列表中的优先级就会下降。
即使仍然被入侵,只要有可用备份和恢复流程,事故也只是几天的恢复工作。没有这些准备,就会变成一次完整的重建项目。
4. 维护范围与周期
网站维护大致分为四部分:内容修改、技术更新、监控和故障响应。与服务商之间的大多数争议,都源于合同没有说清四类工作中哪些属于服务范围。取得报价前,先按这个框架整理公司希望外包的内容,沟通会快很多。
4.1 哪些工作属于维护?
- 内容修改:更换文字和图片、发布弹窗与横幅、管理文章。新建页面或重新设计通常需要单独报价,这也是合同中最容易模糊的边界
- 技术更新:定期更新 CMS 核心、插件和服务器软件包,并安装安全补丁
- 监控:检查网站能否访问、响应速度、SSL 和域名到期日、备份是否成功。这样就不必等客户反馈才知道网站故障
- 故障响应:网站无法访问、被入侵或出错时查找原因并恢复。第 6 章会介绍如何在 SLA 中约定响应速度
4.2 各项工作的建议周期
| 项目 | 主要工作 | 建议周期 |
|---|---|---|
| 运行监控 | 自动监控访问状态和响应速度,停机时报警 | 持续(自动) |
| 备份 | 备份文件与数据库并保存到服务器之外 | 至少每周一次;频繁更新的网站每天一次 |
| 恢复测试 | 使用备份在测试环境中实际恢复 | 每季度一次 |
| 更新 | CMS 核心与插件更新、安全补丁 | 每月一次;紧急补丁立即安装 |
| SSL 与域名检查 | 检查到期日和续期状态 | 每月一次,并启用自动提醒 |
| 内容修改 | 更换文字、图片和弹窗 | 按需(合同范围内) |
| 检查报告 | 汇总已完成工作、问题与流量 | 每月一次 |
4.3 网站用途决定维护周期
表格只是起点。公司介绍网站每周备份一次可能足够,但每天都会新增订单、预约或会员数据的网站,应当每天备份。判断标准很简单:“如果丢失一天的数据,会有多大损失?”损失越大,间隔就应越短。
5. 网站维护费用结构
常见收费方式有两种:按次结算和按月服务。如果一年只修改几次,按次收费通常更便宜;如果每月至少需要处理一次,或者希望包含监控和备份,则更适合按月付费。先确定这个选择,比较报价会容易许多。
5.1 按次结算:不用就不收费,但也没人持续关注
只有收到请求时才工作,并按每次任务收费。更换文字或图片通常每次数万韩元,涉及功能的修改则按所需工时报价。没有固定支出是优点,但它有一个结构性弱点:没有人持续监控网站。备份和监控不在合同中,因此第 2 章提到的风险依然存在。如果选择这种方式,至少要自行自动化备份和到期提醒。
5.2 不同月度服务方案的比较
月度服务通常按范围分为三个层级。以下金额是韩国市场中常见的参考水平,实际费用会因网站结构和服务商而异。
| 类型 | 常见月费 | 包含范围 | 适合对象 |
|---|---|---|---|
| 按次结算 | 无月费,每次数万韩元起 | 仅在请求时修改 | 每年修改 1~2 次,可自行备份 |
| 轻量 | 每月约 5 万~15 万韩元 | 小规模内容修改+备份+基础检查 | 公司介绍网站 |
| 标准 | 每月约 20 万~50 万韩元 | 保证每月修改次数+更新+监控+故障响应 | 咨询或预约直接带来收入的网站 |
| 专属 | 每月 100 万韩元以上 | 持续安排策划和开发资源,包含功能改进 | 电商与服务型平台 |
5.3 报价单中要单独确认的三件事
第一,把托管费、域名费和维护费分开查看。有些报价会把服务器租用费混入维护项目,也有人误以为维护费包含托管而重复付款。第二,如果合同写着修改次数“无限”,请查看附加条件。无限通常伴随严格的范围限制。第三,确认是否写明范围外工作的单价。提前约定每小时或每次的费用,就能避免后续争议。
如果还想了解制作阶段的报价结构,可阅读网站制作费用指南。制作报价和维护报价的阅读方式并不相同。
“免费维护一年”的陷阱
制作合同中常见的“免费维护一年”,通常是指修复交付时已有问题的质保服务。内容修改和安全更新往往不在范围内。
签约前应以书面形式确认免费期间的具体范围。如果只看到“免费”就把网站放置一年,免费期结束时可能已经积压了一整年的更新。
6. 如何与服务商约定 SLA
SLA(Service Level Agreement)不一定是复杂的文件。它只是用数字写清“发生什么情况时,对方要在多久内完成什么工作”。“认真响应”之类的表述在争议发生时无法提供保证。把五项内容量化即可。
6.1 合同中应量化的五项内容
- 首次响应时间:收到请求后几小时内首次回复;按工作时间还是自然时间计算;夜间和周末故障通过什么渠道提交
- 故障恢复目标:整个网站无法访问时,要求几小时内恢复。最好按严重程度分别约定整体停机、部分功能错误和普通咨询
- 备份周期与保留:多久备份一次、保存在哪里、保留几代。不要只写“提供备份”,而要写“每周一次、外部存储、保留最近四份”
- 源代码与账号权限:明确源代码副本、服务器、域名和管理员账号由谁所有
- 范围外工作单价:提前约定合同外请求的每小时或每次费用
6.2 源代码和账号属于公司资产
最棘手的一类事故是:维护服务商停业或失联,而域名登记在服务商名下,服务器账号也只有服务商知道。即使网站还正常显示,公司也无法修改。域名注册人必须是公司,服务器和 CMS 管理员账号也要由公司保管。如果合同要求定期交付源代码副本,更换服务商时也能保留主动权。
如果还在选择服务商,可参考网站服务商选择指南。只看制作案例很难判断维护能力,需要提出专门的问题。
一条交接条款可以保护公司
建议在合同中加入:“合同结束后 30 日内,服务商应移交全部源代码、数据库和账号信息。”没有这项条款,更换服务商时,交接可能被当作谈判筹码。
可靠的服务商不会排斥这项条款。对方的犹豫本身就是筛选信号。
7. 总结与检查清单
7.1 今天用 30 分钟就能检查的六件事
整篇文章可以归纳成六个行动,今天就能全部检查。
- 检查 SSL 到期日:从浏览器地址栏查看证书期限。剩余不足 30 天时,立即确定续期负责人
- 检查域名到期日和注册人:通过 WHOIS 确认期限,并检查注册人是否为公司
- 找到最新备份:确认最后一次备份的时间,以及是否保存在服务器之外。如果没有人知道答案,那本身就是答案
- 整理管理员账号:删除离职员工和共用账号,并启用双重验证
- 检查更新状态:查看 CMS 后台的待更新数量。达到两位数时,应先备份再安排更新
- 阅读合同:如果已有维护合同,确认响应时间、恢复目标和源代码访问权是否用数字和明确文字写出。若没有,可用第 6 章的五项内容进行续约谈判
7.2 维护的成本与放任的成本
如果六项检查中有三项以上回答“不知道”,这个网站已经进入无人维护状态,只是事故尚未发生。
维护每月花费数万至数十万韩元;长期放任则要承担重建费用、收入损失和恢复信任所需的时间。网站不是在上线当天完成,而是从上线当天开始运营。只有在事故发生前,你才能选择要支付哪一种成本。