在Serv00上搭建NotionNext并保活

1.获取你的Notion ID(之前有账号的获取ID就行)

没有账号先注册一个

https://www.notion.so/

复制作者模板
https://tanghh.notion.site/02ab3b8678004aa69e9e415905ef32a5
image.png
发布网站并获取你的ID
image.png
将 / 到 ? 部分复制下来——这就是你的ID
image.png
在notion的配置中心配置相关变量,后续无需在代码中修改,直接与Notion中的变量相关联

不要去动serv00中的其他代码
image.png
具体变量部分参考blog.config.js,作者都有注明,就不详细展开了
https://github.com/tangly1024/NotionNext/blob/main/blog.config.js

2. 在cloudflare创建你的博客域名

获取serv00的IPV4
image.png

3. 开放1个随机端口并开启应用权限

image.png

4. 在serv00添加cloudflare域名

image.png

4.下载NotionNext包

由于作者的项目是一直更新的,所以用我fork作者的包,以防后面不适配需要的 .next 包

进入 public_html 文件下

1
cd /usr/home/你的serv名字/domains/域名/public_html

下载NotionNext

1
git clone https://github.com/zjmkkk/NotionNext && cd NotionNext

由于serv00系统无法构建 .nest 包,所以我用Ubuntu系统打包好了,直接用我打包好的就行。

1
wget -O next-build.zip "https://alist.xjfkkk.rr.nu/d/NotionNext/next-build.zip?sign=X35V1hZsX2z7XvsIGvwzMWpnjfqbMIBO1bK92ZdcPaU=:0" && unzip next-build.zip

5.安装所需依赖

1
yarn install

6.创建start.sh运行脚本

去文件管理器的NotionNext目录下创建start.sh文本

1
2
3
4
5
6
7
#!/bin/bash

# 进入指定目录
cd /usr/home/serv00账号/domains/博客域名/public_html/NotionNext

# 设置环境变量并启动项目
env NOTION_PAGE_ID=你的NotionID名 yarn start -p 你的端口

serv00账号博客域名你的NotionID名你的端口替换为你自己的并保存

下面同理

7.创建restart.sh保活脚本

去文件管理器的NotionNext目录下创建restart.sh文本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/bash

# 设置脚本路径
SCRIPT_PATH="/usr/home/serv00账号/domains/你的域名/public_html/NotionNext/start.sh"
WORK_DIR="/usr/home/serv00账号/domains/你的域名/public_html/NotionNext"
PORT=你的端口

# 检查端口是否被占用
if ! sockstat -4 -l | grep -q ":$PORT"
then
# 如果端口没有被占用,则重新启动脚本
cd "$WORK_DIR"
nohup ./start.sh > /dev/null 2>&1 &
echo "Restarted start.sh at $(date)" >> "$WORK_DIR/restart_log.txt"
fi

8.赋权创建的脚本

1
2
3
chmod +x /usr/home/serv00名字/domains/域名/public_html/NotionNext/start.sh

chmod +x /usr/home/serv00名字/domains/域名/public_html/NotionNext/restart.sh

9.将restart.sh放入CF启动程序并保活

先尝试运行程序,在serv00添加Cron

放入restart.sh路径

1
/usr/home/serv00名字/domains/域名/public_html/NotionNext/restart.sh

image.png
访问你的域名
image.png
最后删除cron任务,并将前面的restart.sh路径放入CF保活

Cloudflare Worker自动检测并添加servoo/CT8的Cron

📎 参考文章