包游文化
包你游,不包邮 · 一个初一学生团队做的网站,和我一路踩过的坑
一、这是什么
「包游文化」是一个由初一学生创立的小网站,网址是 baoyouwenhua.github.io。
网站里有:免费小游戏(乒乓球、五子棋、中国象棋)、连载漫画、网站制作服务,以及一个我亲手搭起来的社区系统。
名字的深意:「包游」不是包邮,是「包你游」。包你游游戏、游漫画、游古建复原。拼音一样,听起来像包邮,写出来才是包游。
二、我用了什么技术
前端HTML + 原生 JavaScript,一个文件搞定
托管GitHub Pages,免费静态托管,不用买服务器
后端Supabase,免费数据库 + 云函数,不用自己搭服务器
全部免费没有花一分钱,不绑信用卡,也不买服务器
三、网站现在有什么功能
对所有人开放
- 论坛:发帖、点赞、楼中楼回复
- 小游戏:乒乓球、接住小球、五子棋、中国象棋
- 漫画商城:搞笑漫画、包子漫画、包星漫画
- 游戏排行榜:按游戏和模式分榜,看前 10 名
注册用户
- 注册、登录(密码加密存储,不是明文)
- 修改真实姓名和班级
- 加好友、发私信、举报违规内容
员工
- 查看任务面板、内部资料
- 员工论坛发帖
- 查看自己的销售统计
管理员(站长)
- 升级/降级员工
- 审核举报(已处理 / 忽略)
- 删除帖子、私信、资料、任务
- 一键清理被屏蔽的私信
四、数据库里存了什么
- messages:论坛帖子,带点赞数和楼中楼回复
- scores:游戏排行榜成绩
- users:用户账号,密码用 Blowfish 加密
- purchases:漫画/游戏的购买记录
- tasks / documents:员工的任务面板和内部资料
- staff_messages:员工内部论坛
- social:好友关系、私信、通知
- reports:用户举报记录
所有涉及「修改」和「删除」的操作,都不允许网页直接碰数据库,必须通过服务器端的安全函数执行。这样就算有人偷了网页上的密钥,也删不掉数据、改不了权限。
五、这一路踩过的坑
- 坑MongoDB 注册要填公司、城市,还一直报错,后来果断放弃,换了 Supabase。
- 坑Twikoo 评论系统要在 Vercel 部署,国内访问慢,还要绑手机号。
- 坑Supabase 在手机上的菜单藏得很深,必须先点 SQL Editor 再往下翻到底,才能看到 Project Settings。
- 坑数据库的删除权限绝对不能直接开给网页,否则别人拿到密钥就能删库。删除必须走服务器端的安全函数。
- 经验用 Supabase 的 RPC 函数 + security definer 处理敏感操作,是最安全、最省心的做法。
- 经验密码用 crypt() 加密,比对时用 crypt(输入密码, 存的值),而不是解密。
六、关于我
我是这个网站的站长,初一学生,一个人搭起了前端、后端、数据库和整套权限系统。
网站:baoyouwenhua.github.io
如果你也在用 GitHub Pages + Supabase 搭网站,欢迎交流。