# 想要一个轻量匿名投稿站？使用Sycamore\_whisper谢谢喵！

**URL:** <https://forum.rainyun.com/t/topic/12825>\
**Category:** 云服务器 RCS\
**Created:** [2025 年11 月 20 日 14:54 UTC](https://forum.rainyun.com/t/topic/12825 "2025-11-20T14:54:09Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

作者： ![LeonXie](https://forum.rainyun.com/letter_avatar_proxy/v4/letter/l/6de8d8/32.png) [@LeonXie](https://forum.rainyun.com/u/LeonXie)\
发布日期： [2025 年11 月 20 日 14:54 UTC](https://forum.rainyun.com/t/topic/12825/1 "2025-11-20T14:54:10Z")

</div>

## **前言**

应该很多学校都有校园墙/表白墙吧，但大多数都是以这样的模式运营的：用户发送投稿到运营者的微信账号，再由运营者审核后发送至朋友圈。

这样的模式，我认为虽然容易起手，但是没有真正匿名的感觉，因为无论如何运营者都会知道你是谁。其次，对运营者和用户都有些麻烦：运营者需要定时查看微信消息，再把消息复制到朋友圈发布，如果有图片甚至还要下载到本地，再到朋友圈发送；用户不能随时随地投稿，查看内容也需要打开微信，点开朋友圈。

在我们学校的校园墙跑路后，我萌生了搭建一个匿名投稿站的想法，但是市面上又没有很符合我要求的项目，于是…就自己设计了一个！今天我们就来部署一下Sycamore\_whisper吧！

## **项目优势**

1、轻量，功能完整

2、除了ip哈希会用于速率限制而被储存，不储存 **任何** 其他用户信息

3、开箱即用，无需复杂配置

~~缺点：代码大多数使用AI编写，维护成本较高喵（逃）~~

欢迎留下你宝贵的建议，或者参与项目维护喵！谢谢！

## **项目演示**

[![|813pxx384px](https://forum.rainyun.com/uploads/default/original/2X/5/57af8a5695841183aba52496c641208c1b43dc53.png)](https://www.leonxie.cn/upload/image-AkUK.png)

首页

[![|814pxx385px](https://forum.rainyun.com/uploads/default/original/2X/0/04b09c5450b5fae1b706df5d5b010c0fb82eb03a.jpeg)](https://www.leonxie.cn/upload/image-fGzF.png)

投稿

[![|448pxx414px](https://forum.rainyun.com/uploads/default/original/2X/3/3d88e40ef41748483f0c5677fa96ba86441d9890.png)](https://www.leonxie.cn/upload/image-xmLn.png)

评论

[![|729pxx345px](https://forum.rainyun.com/uploads/default/original/2X/b/baf54921aaf7cd0d584655fb9e55cf4bb752bdfd.png)](https://www.leonxie.cn/upload/image-dCtN.png)

管理面板

## **环境准备**

**不知道在哪里购买服务器？推荐[雨云](https://rainyun.com/Leonxie_)，价格可接受，操作方便，开箱即用。**

**[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/0/0e3f151b729bd0d2cdfff34454b8658e4c97e223.jpeg)](https://www.leonxie.cn/upload/image-bVRb.png)**

那么话不多说，我们开始吧~

我们先来配置一下环境吧！首先，让我们在服务器端安装一下python环境。

```auto
apt install python3 python3-venv python3-pip screen git

```

接下来，我们在电脑上[安装一下node.js环境](https://nodejs.org/zh-cn)

安装pnpm

```auto
npm install -g pnpm

```

完成~

## **部署后端**

那么，我们开始部署后端吧！

首先，克隆项目到本地

```auto
git clone https://github.com/Sycamore-Whisper/backend && cd backend

```

创建一个screen，让项目在后台保持运行

```auto
# 创建screen，api为screen的名字
screen -S api
# 后续回到screen
screen -r api

```

然后，创建一个虚拟环境并激活

```auto
python3 -m venv api-venv
source api-venv/bin/activate

```

如果bash前面出现 (环境名) 说明已经进入了虚拟环境

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/b/b943ffc766f50cd08c561a9faf040ad44e5b2bfd.png)](https://www.leonxie.cn/upload/image-hRyn.png)

接下来，安装项目依赖：

```auto
pip install -r requirements.txt

```

如果没有报错的话，就可以运行了！

如果遇到编译错误，可能需要安装 Python 开发工具包（如 python3-dev）

```auto
python api_server.py

```

成功！

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/6/655deed03dc03d058c18d6535b084d23e3baac2b.png)](https://www.leonxie.cn/upload/image-KkOH.png)

注意：此时项目监听的是127.0.0.1的5000端口，如需修改，可以打开api\_server.py，滑动到最下方，修改app.run部分：

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/6/61ae83221cf65b3d0ab7723bcf547fdc156097b8.png)](https://www.leonxie.cn/upload/image-HgFE.png)

接下来，配置反向代理和SSL证书，这里就不再赘述啦！

如果访问/路由看到这个提示，就说明后端已部署完毕！可以开始对接前端进行初始化了！恭喜🎆

[![|943pxx259px](https://forum.rainyun.com/uploads/default/original/2X/c/ce569193caa06ea0490b06c9fae4c6b90a162f9d.png)](https://www.leonxie.cn/upload/image-KkIs.png)

## **部署前端**

克隆前端项目至本地：

```auto
git clone https://github.com/Sycamore-Whisper/frontend && cd frontend

```

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/3/3d9fe97a98e0d43ace79fc233a5ee5c0b4a43e78.png)](https://www.leonxie.cn/upload/image-zxNs.png)

文件夹里有好多文件，我们不用管，径直来到/scr/config.ts：

我们主要修改api\_config，在这里填入后端地址，注意是开放到公网上的地址，剩下的按需配置：

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/c/ce52540694d31b2953939bd8c444e19994e0696b.png)](https://www.leonxie.cn/upload/image-xMPX.png)

如果前端打算使用https，后端也要使用https！

接下来，找到/public/icon.png，将其替换为自己的图标

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/5/578833fb3b1396f63de52eb983cb4a1eaacd9897.png)](https://www.leonxie.cn/upload/image-irWI.png)

然后是about.md，可以填写markdown格式的内容，会展示在"关于"页面：

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/e/ee1c2479c4f442edd3678675507e8cca67d82aaf.png)](https://www.leonxie.cn/upload/image-icJZ.png)

好耶！前端初始化完成，可以执行`pnpm install`安装依赖，`pnpm build`来构建静态文件了！

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/f/f0a2e8230e46d6b1dcd124ba0cb207f1401b1f0d.png)](https://www.leonxie.cn/upload/image-DWDq.png)

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/0/037bf7691e6865d1fc05fe9a293a277ffb89f9e2.png)](https://www.leonxie.cn/upload/image-sOiv.png)

我们把静态文件上传到服务器：

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/9/9a7d1869d606721e0da322725cb341a43d637d09.jpeg)](https://www.leonxie.cn/upload/image-wmzi.png)

接下来配置SPA路由回退，将这些配置加入nginx配置文件：

```auto
location / {
    try_files $uri $uri/ /index.html;
}

```

## **初始化**

访问网站，即可来到后端初始化页面~按照图片提示配置：

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/7/7d8c539090f48fbfeb241270c2d10778adbdf4be.png)](https://www.leonxie.cn/upload/image-LDGm.png)

初始化成功，恭喜！

[![|100%x100%](https://forum.rainyun.com/uploads/default/original/2X/d/d2c33eae0b933d57683bc29c6fc070d22f35dd96.png)](https://www.leonxie.cn/upload/image-QJig.png)

可以尽情使用啦~感谢使用Sycamore\_whisper项目喵！

后续可以使用`git pull`更新项目！

## **结语**

感谢你能读到这里，也恭喜你成功部署了Sycamore\_whisper。

其实一开始并没有打算单独做一个项目。当时使用了typecho+共享账户的方式搭建了匿名投稿站，但是后来缺乏维护，共享账户也容易被滥用，比如修改密码什么的。后来学长/姐运营的"XXXX匿名投稿bot"跑路了，才又想起来这件事。

这个项目…一开始看起来像一个不可能的任务，毕竟我从没有开发过这么复杂的前端，后端也不会多少。但好在有AI辅助，让我3页草稿的设计变为现实，看到这个成品，咱也很开心和有成就感哦！

所以…希望你也用的开心哦~

如果遇到任何问题，欢迎留言，我会尽力解决！

---

<div class="post-metadata">

作者： ![雪球Bqiu](https://forum.rainyun.com/user_avatar/forum.rainyun.com/%E9%9B%AA%E7%90%83bqiu/32/11785_2.png) [@雪球Bqiu](https://forum.rainyun.com/u/%E9%9B%AA%E7%90%83Bqiu)\
发布日期： [2025 年11 月 21 日 08:11 UTC](https://forum.rainyun.com/t/topic/12825/2 "2025-11-21T08:11:28Z")

</div>

来晚了（
