匿名聊天室源码
一套纯静态前端 + PHP 接口的匿名聊天室源码,不用服务器、不用 Node 环境,普通虚拟主机传上去就能跑。全程大概 10 分钟搞定,跟着步骤走就行。
📋 前期准备
- 虚拟主机一台,PHP 7.4 及以上(宝塔、cPanel、阿里云虚拟主机都行)
- 配套 MySQL 数据库,多数虚拟主机买了就免费送
- 文件传输工具:FileZilla(免费)或直接用主机的在线文件管理器
📦 压缩包目录结构
anon-chat/
├── dist/ # 已编译好的前端页面,上传即用
│ ├── index.html
│ ├── favicon.svg
│ └── assets/
│ ├── index-xxx.js
│ └── index-xxx.css
├── php-api/ # PHP 后端接口
│ ├── config.php # 数据库配置(必须改)
│ ├── rooms.php # 房间创建 / 查询接口
│ ├── messages/index.php # 消息收发接口
│ └── database.sql # 建表脚本
└── 部署教程.md
🚀 搭建步骤(约 10 分钟)
第一步:导入数据库(2 分钟)
- 登录虚拟主机控制面板
- 进入 phpMyAdmin
- 选中你提前建好的数据库
- 点顶部【导入】选项卡
- 选择文件,指向压缩包里的 php-api/database.sql
- 点执行
- 提示导入成功后,数据库里会自动生成 rooms、messages 两张表
第二步:修改数据库配置(1 分钟)
用记事本或 VSCode 打开 php-api/config.php,改这四行:
define(‘DB_HOST’, ‘localhost’); // 数据库地址
define(‘DB_NAME’, ‘your_database’); // 数据库名
define(‘DB_USER’, ‘your_username’); // 数据库账号
define(‘DB_PASS’, ‘your_password’); // 数据库密码
换成虚拟主机后台给的那组数据库信息,保存即可。
第三步:上传网站文件(5 分钟)
FTP 连上主机,文件全部丢进网站根目录 public_html/:
- dist 文件夹里的全部文件 → 上传到 public_html/ 根目录,包含 index.html、favicon.svg 和 assets 文件夹(JS、CSS 都在里面)
- 整个 php-api 文件夹 → 上传到 public_html/php-api/
上传后的目录长这样:
public_html/
├── index.html
├── favicon.svg
├── assets/
│ ├── index-xxx.js
│ └── index-xxx.css
└── php-api/
├── config.php
├── rooms.php
└── messages/
└── index.php
别上传开发文件:src、scripts、node_modules、package.json、vite.config.js 这些传上去没用。
第四步:访问测试(2 分钟)
- 浏览器打开你的域名
- 会先出现加载动画,输入昵称进入公共大厅
- 点创建房间,自动生成 6 位房间号
- 把域名和房间号发给好友
- 好友打开域名,输入房间号就能进来聊
✅ 搭建完成自检清单
- ☑ phpMyAdmin 里能看到 rooms、messages 两张表
- ☑ config.php 的数据库地址、账号、密码全部改对
- ☑ 根目录有 index.html、assets 文件夹、php-api 文件夹
- ☑ 域名打开能正常显示加载动画
- ☑ 输入昵称能进大厅
- ☑ 新建房间能生成 6 位房间号
- ☑ 别人输入房间号能成功加入
🐛 常见问题排查
1. 打开域名页面空白
先看 assets 文件夹是不是传全了,缺 JS 或 CSS 会直接白屏。
2. 创建房间提示失败
① 核对 config.php 的数据库配置;② 浏览器直接访问「域名/php-api/rooms.php」,报错信息会写得很清楚。
3. 好友输入房间号提示房间不存在
① 确认 php-api 文件夹完整上传到了根目录;② 确认 database.sql 已导入并成功建表;③ 再核对一遍 config.php。
4. 发消息对方看不到
消息默认每 3 秒自动同步,稍等一下就行。长时间不同步就去看 PHP 错误日志。
5. 报错 Access denied for user
数据库账号或密码填错了,回去改 config.php。
6. 页面中文乱码
导入 database.sql 时,编码要选 utf8mb4。
🆕 新增功能
双向清理:记录清除之后,服务器不会保留任何数据。
📎 源码下载
💬 答疑专区
搭建报错、步骤看不懂、想改功能,直接在下方评论区留言,我会逐条回复。
⚠️ 免责声明
本项目仅供前端与 PHP 技术学习交流,请遵守平台社区规则与国家法律法规,禁止用于违规场景,使用后果由使用者自行承担。













请登录后查看评论内容