Skip to main content
← All posts
作者:Sagasu

穷鬼套餐 第3章:安家落户 —— 免费服务器与应用托管

开篇:让你的应用有个温暖的家

在前一章,我们成功获取了域名这个"门牌号"。但仅有门牌号是不够的,我们还需要一个"房子"来安置我们的应用。这个"房子"就是服务器或托管服务。

传统上,搭建一个网站需要购买服务器、配置环境、处理运维……这一套下来不仅费钱,还费时费力。但在2025年,云服务的发展已经让这一切变得简单得难以置信。更重要的是,通过"穷鬼套餐"的方案,这一切可以完全免费!

本章将带你了解各种免费托管方案,从最简单的静态网站托管,到强大的Serverless计算,再到完全可控的传统VPS,帮你找到最适合你项目的"安家"方案。

现代托管方案全景图

在进入具体介绍之前,让我们先了解一下现代托管方案的分类:

托管方案分类

1. 静态网站托管

  • 代表平台 :Cloudflare Pages、Vercel、Netlify、GitHub Pages
  • 适用场景 :博客、文档站、作品集、单页应用
  • 核心特点 :部署简单、性能极佳、全球CDN、零运维

2. Serverless计算

  • 代表平台 :Cloudflare Workers、Vercel Serverless Functions
  • 适用场景 :API服务、动态路由、边缘计算
  • 核心特点 :按需执行、全球分布、自动扩展、成本极低

3. 传统VPS

  • 代表平台 :Oracle Cloud Always Free、Google Cloud、AWS
  • 适用场景 :需要完全控制权、复杂应用、自定义环境
  • 核心特点 :完全控制、灵活配置、可运行任何软件

4. PaaS平台

  • 代表平台 :Railway、Render、Fly.io
  • 适用场景 :全栈应用、需要数据库的项目
  • 核心特点 :简化运维、自动化部署、集成服务

静态网站托管:零成本的极致性能

静态网站托管是"穷鬼套餐"中最容易上手、性能最优的方案。让我们详细了解四大主流平台:

1. Vercel —— Next.js的完美搭档

核心优势

Vercel是Next.js框架的创建者,专为现代前端应用优化。它的免费套餐强大到令人惊叹:

  • 无限静态部署 :可以部署任意数量的项目
  • 每月100GB带宽 :足够一个日均数千访问量的网站使用
  • 100次构建分钟数 :自动构建和部署你的项目
  • 全球边缘网络 :在全球部署,访问速度极快
  • 自动HTTPS :一键开启SSL证书
  • 预览部署 :每个Pull Request自动生成预览链接

性能表现

根据社区测试数据,Vercel在服务端渲染(SSR)优化方面,构建速度领先行业平均水平40%。开源项目"Notion-style Editor"通过Vercel实现毫秒级页面切换,用户留存率提升25%。citation

最佳适用场景

  • Next.js、React、Vue等前端框架项目
  • 需要动态SEO优化的网站
  • 实时数据仪表盘
  • 个人博客和作品集

2. Cloudflare Pages —— 全球化部署的标杆

核心优势

Cloudflare Pages基于Cloudflare强大的全球网络,提供业界领先的性能:

  • 无限带宽 :是的,你没看错,完全不限流量
  • 每月500次构建 :比Vercel更多的构建额度
  • 全球300+数据中心 :世界各地的用户都能快速访问
  • 与Workers无缝集成 :可以轻松添加动态功能
  • 自动化部署 :连接GitHub后自动构建发布

性能实测

基于Rust构建引擎,Cloudflare Pages的全球平均首字节时间(TTFB)控制在50ms以内,较传统CDN快3倍。citation

最佳适用场景

  • 需要全球访问的静态网站
  • 文档站点和技术博客
  • 与Cloudflare生态深度集成的项目
  • 需要配合Workers添加动态功能的应用

3. Netlify —— 全栈功能的低成本实现

核心优势

Netlify提供了更多开箱即用的全栈功能:

  • 每月100GB带宽 :与Vercel相同的带宽额度
  • 免费表单处理 :每月10万次表单提交,无需后端
  • 边缘函数支持 :内置Serverless函数功能
  • A/B测试 :免费层即可使用
  • 自动HTTPS和CDN :标配功能

实验数据

开发者社区调研显示,Netlify的表单处理效率较传统方案节约85%的后端开发成本。citation

最佳适用场景

  • 需要表单功能的网站(联系表单、调查问卷等)
  • Landing Page和营销页面
  • 需要A/B测试的项目
  • JAMstack架构应用

4. GitHub Pages —— 开源生态的天然选择

核心优势

GitHub Pages是最简单、最直接的免费托管方案:

  • 完全免费 :无需信用卡,无任何隐藏费用
  • 每月100GB带宽 :足够个人项目使用
  • 与GitHub深度集成 :推送代码即自动部署
  • 支持Jekyll :Markdown文档自动构建
  • 自定义域名 :免费HTTPS支持

集成优势

与Jekyll深度整合,Markdown文档自动化构建耗时仅需同类平台的1/3。通过GitHub Actions实现持续集成,支持每小时10次自动构建。citation

最佳适用场景

  • 个人博客和技术文档
  • 开源项目官网
  • 简单的静态展示页面
  • 学习和实验项目

四大平台对比

平台带宽限制构建次数特色功能最佳场景
Vercel100GB/月100次Next.js优化、预览部署现代前端框架项目
Cloudflare Pages无限制500次全球CDN、Workers集成全球访问、高性能需求
Netlify100GB/月300分钟表单处理、A/B测试营销页面、需要表单
GitHub Pages100GB/月10次/小时Jekyll集成、零配置开源项目、文档站

Serverless计算:按需执行的魔法

静态网站虽然性能极佳,但有时我们需要一些动态功能——处理表单、调用API、实现认证等。这时,Serverless计算就派上用场了。

1. Cloudflare Workers —— 边缘计算的王者

什么是Workers?

Cloudflare Workers是一个Serverless计算平台,你的代码会被部署在Cloudflare全球300+个数据中心,当用户访问时,距离最近的节点会执行你的代码并返回结果。

免费额度

  • 每天10万次请求 :对个人项目来说基本用不完
  • 10ms CPU时间/请求 :足够处理大部分业务逻辑
  • 全球边缘部署 :自动分发到所有节点
  • 支持多种语言 :JavaScript、TypeScript、Python、Rust等

能做什么?

Workers的应用场景非常广泛:

  • API代理 :代理国外服务到国内(如ChatGPT、Bing等)
  • 重定向和路由 :实现动态路由规则
  • 身份验证 :添加访问控制
  • 数据处理 :实时处理和转换数据
  • 缓存优化 :智能缓存策略
  • 图床服务 :结合R2对象存储

实际案例

GitHub上的awesome-cloudflare项目收录了大量Workers应用,包括图床、短链、博客、邮箱服务等。这些项目证明了Workers的强大能力和灵活性。

2. Vercel Serverless Functions

核心特点

Vercel的Serverless Functions与前端项目无缝集成:

  • 自动部署 :与前端代码一起部署
  • 零配置 :创建/api目录即可
  • 支持多种运行时 :Node.js、Python、Go、Ruby
  • 环境变量管理 :安全存储API密钥

最佳实践

  • 处理表单提交
  • 调用第三方API
  • 图片处理和优化
  • 简单的CRUD操作

传统VPS:完全控制的自由

对于需要完全控制服务器环境的场景,传统VPS仍然是最佳选择。而在免费VPS领域,Oracle Cloud的Always Free Tier堪称王者。

Oracle Cloud Always Free Tier —— 永久免费的超强配置

什么是Always Free?

Oracle Cloud提供的永久免费套餐(Always Free Tier),不是试用,而是真正的永久免费。只要你遵守服务条款,这些资源将一直可用。

免费配置清单

计算资源 :

  • 2个AMD x86虚拟机 :每个1核1GB内存
  • 或4核24GB ARM虚拟机 :可作为1个虚拟机或分成4个小虚拟机
  • 所有虚拟机均有公网IP

存储资源 :

  • 200GB块存储 :相当于虚拟机的硬盘
  • 10GB对象存储 :类似网盘,可搭建图床
  • 10GB归档存储 :用于长期数据备份

网络资源 :

  • 每月10TB出站流量 :远超个人项目需求
  • 灵活负载均衡器 :1个实例,10Mbps

这个配置在付费VPS市场至少价值每月30-50美元!citation

适用场景

Oracle Cloud免费VPS适合:

  • 需要安装特定软件或环境
  • 运行Docker容器
  • 搭建私有服务(如VPN、代理)
  • 学习Linux系统管理
  • 托管小型数据库
  • 运行定时任务和脚本

配置建议

  • 单台高配 :4核24GB ARM + 200GB存储(性能最大化)
  • 多台分布 :4个1核6GB ARM(分散风险,多个项目)
  • 混合使用 :2个x86 + 2个ARM(兼容性和性能平衡)

注意事项

  1. 注册难度 :需要信用卡验证,部分地区可能需要多次尝试
  2. 资源竞争 :热门地区(如首尔、东京)ARM实例经常售罄
  3. 政策合规 :严格遵守使用条款,避免滥用导致封号
  4. 备份意识 :虽然免费但仍需定期备份重要数据

实操指南:从零到部署

实战一:在Vercel部署Next.js应用

步骤1:准备项目

# 创建Next.js项目
npx create-next-app@latest my-app
cd my-app

# 推送到GitHub
git init
git add .
git commit -m "Initial commit"
git remote add origin https://github.com/username/my-app.git
git push -u origin main

步骤2:连接Vercel

  1. 访问 https://vercel.com 并注册账号
  2. 点击"New Project"
  3. 导入你的GitHub仓库
  4. Vercel会自动检测Next.js项目并配置构建设置
  5. 点击"Deploy"开始部署

步骤3:配置自定义域名

  1. 在Vercel项目设置中点击"Domains"
  2. 添加你的自定义域名(如myproject.eu.org)
  3. Vercel会提供DNS记录配置指导
  4. 到Cloudflare DNS添加相应的CNAME记录
  5. 等待几分钟,域名即可生效

步骤4:环境变量配置

在Vercel项目设置中添加环境变量(如API密钥):

DATABASE_URL=your_database_url
API_KEY=your_api_key

完成!现在每次推送代码到GitHub,Vercel会自动构建和部署。

实战二:在Cloudflare Pages部署静态网站

步骤1:准备静态网站

# 创建React项目示例
npx create-react-app my-site
cd my-site

# 构建生产版本
npm run build

# 推送到GitHub
git init
git add .
git commit -m "Initial commit"
git remote add origin https://github.com/username/my-site.git
git push -u origin main

步骤2:连接Cloudflare Pages

  1. 登录Cloudflare Dashboard
  2. 点击"Workers & Pages" → "Create application" → "Pages"
  3. 连接你的GitHub账号
  4. 选择仓库并配置:
    • Build command: npm run build
    • Build output directory: build
  5. 点击"Save and Deploy"

步骤3:配置自定义域名

  1. 部署完成后,点击"Custom domains"
  2. 添加你的域名
  3. Cloudflare会自动配置DNS记录(如果域名托管在Cloudflare)
  4. 启用"小黄云"获得CDN加速

优势 :与Vercel相比,Cloudflare Pages的优势在于无限带宽和与Cloudflare生态的深度集成。

实战三:申请Oracle Cloud免费VPS

步骤1:注册Oracle Cloud账号

  1. 访问 https://www.oracle.com/cloud/free/
  2. 点击"Start for free"
  3. 填写注册信息(需要真实信息)
  4. 验证信用卡(仅用于身份验证,不会扣费)
  5. 选择Home Region(建议选择首尔或东京,延迟低)

步骤2:创建ARM实例

  1. 登录Oracle Cloud控制台
  2. 点击"Compute" → "Instances" → "Create Instance"
  3. 配置实例:
    • Name: 自定义名称
    • Image: Ubuntu 22.04(推荐)
    • Shape: VM.Standard.A1.Flex(ARM)
    • OCPU count: 4(使用全部免费额度)
    • Memory: 24 GB
    • Boot volume: 200 GB
  4. 配置网络:
    • 选择默认VCN
    • 分配公共IP地址
  5. 添加SSH密钥(用于远程登录)
  6. 点击"Create"创建实例

步骤3:配置防火墙

# 连接到VPS
ssh ubuntu@your-public-ip

# 开放常用端口(示例:开放80和443端口)
sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 443 -j ACCEPT
sudo netfilter-persistent save

在Oracle Cloud控制台的安全列表中也需要添加入站规则:

  • 源CIDR: 0.0.0.0/0
  • IP协议: TCP
  • 目标端口: 80, 443

步骤4:安装环境

# 更新系统
sudo apt update && sudo apt upgrade -y

# 安装常用工具
sudo apt install -y nginx git curl wget

# 安装Docker(可选)
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

# 启动Nginx
sudo systemctl start nginx
sudo systemctl enable nginx

现在访问你的公网IP,应该能看到Nginx欢迎页面了!

选择建议:找到最适合你的方案

项目类型匹配表

项目类型推荐方案理由
静态博客Cloudflare Pages 或 GitHub Pages无限带宽,零成本,部署简单
Next.js应用Vercel专门优化,性能最佳
React/Vue SPAVercel 或 Netlify自动构建,预览部署
API服务Cloudflare Workers全球边缘部署,响应快
全栈应用Vercel前端 + Railway后端前后端分离,各取所长
需要数据库Vercel + Supabase/PlanetScale完整的免费技术栈
需要完全控制Oracle Cloud VPS4核24GB,功能强大
学习LinuxOracle Cloud VPS真实服务器环境
Docker部署Oracle Cloud VPS足够的资源运行容器

组合使用建议

最佳实践往往是多个服务组合使用:

组合1:Cloudflare生态全家桶

  • Cloudflare Pages(前端托管)
  • Cloudflare Workers(API逻辑)
  • Cloudflare R2(对象存储)
  • Cloudflare D1(SQLite数据库)

优势:所有服务无缝集成,全在一个平台管理,性能极佳。

组合2:现代化全栈方案

  • Vercel(前端)
  • Supabase(PostgreSQL数据库 + 认证)
  • Cloudflare R2(文件存储)
  • Vercel Serverless Functions(API)

优势:功能完整,各个领域的最佳方案组合。

组合3:传统架构方案

  • Oracle Cloud VPS(后端服务器)
  • Cloudflare Pages(前端静态托管)
  • Cloudflare CDN(加速)

优势:后端完全可控,前端性能优异。

性能优化技巧

1. CDN配置优化

Cloudflare CDN设置 :

  • 启用"小黄云"代理
  • 配置缓存规则:静态资源缓存1年
  • 开启Brotli压缩
  • 启用Auto Minify(自动压缩CSS/JS)

Vercel缓存策略 :

// next.config.js
module.exports = {
  async headers() {
    return [
      {
        source: '/static/(.*)',
        headers: [
          {
            key: 'Cache-Control',
            value: 'public, max-age=31536000, immutable',
          },
        ],
      },
    ]
  },
}

2. 构建优化

减少构建时间 :

  • 使用增量构建
  • 缓存依赖项
  • 按需加载模块
  • 优化图片(使用WebP格式)

Vercel构建优化示例 :

{
  "buildCommand": "npm run build",
  "installCommand": "npm ci --legacy-peer-deps",
  "framework": "nextjs"
}

3. 图片优化

使用Next.js Image组件 :

import Image from 'next/image'

<img src="/photo.jpg" alt="Photo" width="{500}" height="{300}" priority="{true}" placeholder="blur">

Cloudflare Images :

  • 自动格式转换(WebP、AVIF)
  • 实时尺寸调整
  • 智能压缩

常见问题解答

Q:免费托管服务稳定吗?会不会突然停止?

A:我们推荐的服务都来自大厂,稳定性有保障:

  • Cloudflare、Vercel、Netlify都是上市公司或有强大资本支持
  • Oracle Cloud的Always Free是永久承诺,已运行多年
  • GitHub Pages由微软运营,可靠性极高
    但仍建议定期备份数据,不要将所有鸡蛋放在一个篮子里。

Q:免费额度用超了怎么办?

A:

  • Vercel/Netlify :超出后网站会暂停,不会自动扣费,升级付费套餐即可恢复
  • Cloudflare :Workers超出每日10万次请求后会返回错误,次日自动重置
  • Oracle Cloud :Always Free资源不会扣费,但超出配额无法创建新资源

Q:可以同时使用多个平台吗?

A:完全可以!实际上这是推荐做法:

  • 前端托管在Vercel
  • API部署在Cloudflare Workers
  • 数据库使用Supabase
  • 文件存储用R2
    各个服务专注自己擅长的领域,性能和稳定性更好。

Q:Oracle Cloud注册失败怎么办?

A:常见原因和解决方案:

  • 信用卡验证失败 :尝试使用不同的信用卡或Visa虚拟卡
  • IP被标记 :使用干净的网络环境,避免使用VPN
  • 地区限制 :部分地区可能暂不支持,可以等待几天后重试
  • 资源售罄 :选择人少的Region(如孟买、圣保罗)

Q:Vercel和Cloudflare Pages应该选哪个?

A:看具体需求:

  • Next.js项目 → Vercel(原生支持,性能最佳)
  • 静态网站 → Cloudflare Pages(无限带宽)
  • 需要Workers集成 → Cloudflare Pages
  • 需要预览部署和团队协作 → Vercel
    两者都很优秀,可以都试试,找到最适合你的。

本章小结

通过本章学习,你应该已经:

  • ✅ 了解了现代托管方案的四大类型
  • ✅ 掌握了Vercel、Cloudflare Pages、Netlify、GitHub Pages的特点和选择
  • ✅ 理解了Serverless计算的概念和应用场景
  • ✅ 知道如何申请Oracle Cloud的永久免费VPS
  • ✅ 学会了部署第一个应用的完整流程
  • ✅ 掌握了根据项目类型选择合适方案的方法

现在,你的应用终于有了一个温暖的"家"。从静态博客到动态API,从简单的展示页面到复杂的全栈应用,你都有了零成本的解决方案。

但应用上线只是开始。在下一章,我们将探讨如何为应用添加数据存储能力——免费的数据库和对象存储服务。毕竟,一个没有数据持久化的应用,就像一个没有记忆的人。

如果这一章对你有帮助

恭喜你!完成这一章后,你已经可以零成本部署自己的应用了。从选择平台到实际部署,从性能优化到问题排查,这些都是宝贵的实战经验。

如果这一章帮助你成功部署了第一个免费应用,或者让你对云服务有了更深的理解,请不要吝啬你的点赞、分享和关注 !你的每一次互动都是我继续创作的动力源泉。

欢迎在推特上关注我:@sujingshen

我会持续分享更多免费资源、部署技巧和实战经验。也欢迎在评论区分享:

  • 你选择了哪个托管平台?
  • 部署过程中遇到了什么问题?
  • 有没有发现其他好用的免费托管服务?
  • 你的第一个应用是什么?

让我们一起探索,用免费资源搭建出属于自己的互联网王国!🚀

下一章见,我们将深入数据存储的世界!