-
-
+
+
@@ -12,7 +12,7 @@
# 项目说明
-
+
+
+
+3. 在 2.6 版本更新中 AB 额外提供了两种解决被墙的方案。
+
+- 可以在 WebUI 中的 `源站链接` 中修改为自己反代过的 URL
+- 使用代理之后可以使用 AB 自身作为反代节点。
+
+具体可以看[配置代理](../config/proxy)中的说明。
+
+## CloudFlare Workers
+
+根据 OpenAI 被墙的经验,我们也可以通过反向代理的方式解决。具体如何申请域名绑定 CloudFlare 在此不再赘述。
+在 Workers 中添加如下代码即可以用你自己的域名访问蜜柑计划并且解析下载 RSS 链接中的种子。
+
+```javascript
+const TELEGRAPH_URL = 'https://mikanani.me';
+const MY_DOMAIN = 'https://yourdomain.com'
+
+addEventListener('fetch', event => {
+ event.respondWith(handleRequest(event.request))
+})
+
+async function handleRequest(request) {
+ const url = new URL(request.url);
+ url.host = TELEGRAPH_URL.replace(/^https?:\/\//, '');
+
+ const modifiedRequest = new Request(url.toString(), {
+ headers: request.headers,
+ method: request.method,
+ body: request.body,
+ redirect: 'manual'
+ });
+
+ const response = await fetch(modifiedRequest);
+ const contentType = response.headers.get('Content-Type') || '';
+
+ // 如果内容类型是 RSS,才进行替换操作
+ if (contentType.includes('application/xml')) {
+ const text = await response.text();
+ const replacedText = text.replace(/https?:\/\/mikanani\.me/g, MY_DOMAIN);
+ const modifiedResponse = new Response(replacedText, response);
+
+ // 添加允许跨域访问的响应头
+ modifiedResponse.headers.set('Access-Control-Allow-Origin', '*');
+
+ return modifiedResponse;
+ } else {
+ const modifiedResponse = new Response(response.body, response);
+
+ // 添加允许跨域访问的响应头
+ modifiedResponse.headers.set('Access-Control-Allow-Origin', '*');
+
+ return modifiedResponse;
+ }
+}
+```
+
+完成上述配置之后,将你的域名填入 AB 的 **源站链接|Custom URL** 中即可。
\ No newline at end of file
diff --git a/docs/faq/常见问题.md b/docs/faq/常见问题.md
new file mode 100644
index 00000000..fc2e0617
--- /dev/null
+++ b/docs/faq/常见问题.md
@@ -0,0 +1,191 @@
+# 常见问题
+
+## WebUI
+
+### WebUI 地址
+
+默认端口为 7892,请访问 `http://serverhost:7892`,如果你修改了端口,请记得同时更改 Docker 中的端口映射。
+
+### 默认用户名和密码
+
+- 默认用户名:`admin`,默认密码:`adminadmin`。
+- 请务必在第一次登录后修改密码。
+
+### 修改和忘记密码
+
+- 修改密码:在登录后点击右上角`···`,点击 `Profile`,修改用户名和密码。
+- 目前没有简单的忘记密码的重置方法,如果忘记密码,可以删除 `data/data.db` 文件,然后重启。
+
+### 为什么我修改了配置,但是没有生效?
+
+- 修改配置之后请点击 **Apply** 按钮,然后`···` 中的 **Restart** 按钮,此时会重启主进程。
+- 如果开启 **Debug** 模式,请点击 `···` 中的 **Shutdown**,此时会重启容器。
+
+### 如何判断程序是否正常运行
+
+新版 WebUI 右上角有一个小圆点,绿色表示正常运行,红色表示出现错误,程序暂停。
+
+## 3.0 是如何管理番剧的
+
+升级到 3.0 之后 AB 可以在 WebUI 中一键管理番剧种子和下载规则。所以依赖的是种子的下载路径和规则名称。
+如果你手动在 QB 中更改了种子的下载路径,那么可能会碰到通知没有海报,删除种子不起作用等问题。
+请尽量在 AB 中操作管理番剧和种子。
+
+## 下载以及关键词过滤
+
+### 下载路径填写
+
+**下载路径** 到底写什么?
+- 这个参数只要和你 qBittorrent 中的参数保持一致即可。
+ - Docker:比如 qB 中是 `/downloads` 那就写 `/downloads/Bangumi`,`Bangumi`可以任意更改。
+ - Linux/macOS:如果是 `/home/usr/downloads` 或者 `/User/UserName/Downloads` 只要在最后再加一行 `Bangumi` 就行。
+ - Windows:`D:\Media\`, 改为 `D:\Media\Bangumi`
+
+### 没有开始自动下载怎么办:
+
+- 检查 AutoBangumi 的日志,如果日志一切正常,说明是 qBittorrent 的设置问题,检查:
+ - 设置 >> RSS >> 启用 RSS Torrent 自动下载
+ - Options >> RSS >> Enable auto downloading of RSS torrents
+ - 设置 >> RSS >> 启用获取 RSS 订阅
+ - Options >> RSS >> Enable fetching RSS feeds
+ - 检查 qb 配置,看是否有权限新建文件夹
+
+### 下载没有存储在正确的目录中
+
+- 检查 [下载路径](###下载路径填写) 是否正确。
+- 检查 qBittorrent 的配置,PGID 与 PUID ,看是否有权限新建文件夹。可以尝试手动下载任意种子并且指定目录,如果出现错误或者未新建目录为文件夹权限问题。
+- 检查 qBittorrent 的默认配置,Saving Management 选项请选择手动保存,「保存管理 >> 默认种子管理模式 >> 手动」
+
+### 下载很多没有订阅的番剧怎么办?
+
+- 检查一下蜜柑订阅是否订阅了一部番剧的全部字幕组。请一部番剧只订阅一个组,最好开启高级订阅。
+ - 高级定于在 蜜柑计划 的用户设置中开启
+- 正则过滤不到位,请参考下一节拓展正则表达式。
+- 如果以上都没有出现,请带上 LOG 反馈至 [ISSUE][ISSUE]。
+
+### 过滤关键词怎么写。
+
+AB 中的过滤关键词是正则表达式,只会在建立规则的时候添加,后续如果要拓展规则,3.0 版本之后可以在 WebUI 中对每个番剧进行单独定义。
+- 过滤关键词是正则表达式,只需要把不需要的关键词用 `|` 间隔开即可。
+- 默认 `720|\d+-\d+` 这个规则会过滤掉所有合集和 720P 的番剧,如果要添加,请在部署 AB 之前添加完成,后续修改环境变量只会影响到新添加的规则。
+- 常用正则关键词(中间用 `|` )隔开:
+ - `720` 过滤 720、720P、720p 等等
+ - `\d+-\d+` 过滤合集,比如 [1-12]
+ - `[Bb]aha` 过滤 Baha 的番剧
+ - `[Bb]ilibili`、`[Bb]-Global` 过滤 Bilibili 的番剧
+ - `繁`、`CHT` 过滤繁体字幕
+- 如果想要命中关键词,请在 QB 包含中用这种形式添加:`XXXXX+1080P\+` ,其中 `1080P\+` 表示命中 1080P+ 的番剧。
+
+### 第一次部署出了问题下了很多不想下的番剧怎么办?
+
+1. 删除 QB 中多余的自动下载规则,和文件。
+2. 检查订阅,和过滤规则。
+3. 在浏览器中访问 resetRule API 地址 `http://localhost:7892/api/v1/resetRule` ,重置规则。
+4. 重启一下 AB 。
+
+### AB 中识别的 RSS 条目比订阅的少
+
+新版本中 AB 的过滤器也会默认过滤所有 RSS 条目,在设置的时候请不要一股脑全部加上过滤。如果想要细分下载,请在 WebUI 中对每个番剧进行单独配置。
+
+### 过滤关键词不起作用
+
+- 请检查是否正确设置了**全局过滤**参数。
+- 请在 QB 的 RSS 自动下载规则中检查,可以看右侧命中的 RSS,调整下载规则,点击 save 之后可以看到是哪个关键词出现错误。
+
+## 🎬 番剧补全相关
+
+### 番剧补全不起作用
+
+- 请检查是否正确设置了 **番剧补全** 参数。
+- 旧版本的 AB 不支持修改参数临时启用补全,请清除数据并重新部署。
+- 2.5.15 版本之后的 AB 支持临时启用。
+
+## 📁 重命名相关
+
+### 解析错误 `NOT match with XXXXX`
+
+- AB 暂时不支持解析合集,合集请通过 API 添加。
+- 如果非合集,请在 issue 中反馈问题。
+
+### `Rename failed` 或者重命名失败怎么办?
+
+- 检查文件路径,标准存储路径应为 `/title/Season/Episode.mp4` 如果不为标准格式路径会导致命名错误。发生这类错误请排查 qbittorrent 的配置。
+- 非上述问题,请到 issue 反馈。
+
+### 没有自动重命名怎么办?
+
+- 请检查 QB 中种子分类是否在 `Bangumi` 类中。
+- AB 只会重命名已经下载的文件。
+
+### 如何让 AB 重命名非 AB 添加的番剧
+
+- 只需要把种子的类别更改为 `Bangumi` 即可。
+- 需要注意的是,需要种子存放在 `Title/Season X/` 文件夹下才能正常触发重命名。
+
+### 如何重命名合集
+
+1. 把合集的类别更改为 `Bangumi`。
+2. 把合集的存储路径更改为 `Title/Season X/`。
+3. 等待合集下载完成,重命名完成。
+
+## 🌍 网络链接
+
+### 无法连接到 qBittorrent
+
+- 检查 AB 中的 **下载器地址** 参数是否正确。
+ - 如果你的 AB 和 QB 在同一个 Docker 网络中,可以尝试使用容器名称进行寻址,如:`http://qbittorrent:8080`。
+ - 如果你的 AB 和 QB 在同一个 Docker 服务器中,可以尝试使用 Docker 网关地址进行访问,如:`http://172.17.0.1:8080`。
+ - 如果 AB 网络模式不是 `host` 请不要使用 `127.0.0.1` 来访问 QB
+- 在 Docker 中不同容器中无法互相访问,可以在 QB 的网络连接的链接中,设定链接 AB。
+- 如果 qBittorrent 使用 HTTPS 模式,请在 **下载器地址** 参数中添加 `https://` 前缀。
+
+### `DNS/Connect ERROR`
+
+- 请检查网络连接,如果网络连接正常,请检查 DNS 解析。
+- 可以给 AB 添加一个 `dns=8.8.8.8`,如果是 HOST 模式可以忽略。
+- 如果 DNS 解析正常,添加代理。
+- 使用 TMDB 请添加代理。
+
+### 如何给 Mikanani 添加代理
+
+AB 现在提供三种代理模式
+1. HTTP 以及 Socks 代理
+
+ 老版本的 AB 就有这项功能,升级到 2.6 版本之后只需要在 WebUI 中检查代理配置即可正常访问蜜柑计划。
+
+ 不过这时候 qBittorrent 无法正常访问蜜柑计划的 RSS 和种子地址,因此需要在 qBittorrent 中添加代理。详情可以查看 #198
+
+2. 自定义反向代理 URL
+
+ 2.6 版本的 AB 在配置中增加了 `custom_url` 选项,可以自定义反向代理的 URL。
+ 可以在配置中设置为自己正确设置的反代 URL。这样 AB 就会使用自定义的 URL 来访问蜜柑计划。并且 QB 也可以正常下载。
+
+3. AB 作为反代中转
+
+ 在 AB 配置代理之后,AB 自身可以作为本地的反代中转。不过目前仅开放 RSS 相关功能的反代。
+ 这时候只需要把 `custom_url` 设置为 `http://abhost:abport` 即可。 `abhost` 为 AB 的 IP 地址,`abport` 为 AB 的端口。
+ 此时 AB 会把自身地址推送给 qBittorrent,qBittorrent 会使用 AB 的地址作为反代来访问蜜柑计划。
+
+ 请注意,此时如果你没有用 NGINX 等工具对 AB 进行反代,请填入 `http://` 来保证程序正常运行。
+ 注意点2: 请不要在同时使用代理的情况下在 `custom_url` 中使用容器寻址,或者 Docker 的容器或者网关地址。转跳代理之后可能会无法访问 RSS。
+
+## 🐬 Docker 相关
+
+### 如何自动更新
+
+可以通过在 Docker 中运行一个 `watchtower` 的守护进程,守护进程会自动更新你的容器。
+
+[watchtower](https://containrrr.dev/watchtower) 官方文档
+
+### 使用 Docker compose 更新
+
+如果你的 AB 使用 Docker compose 部署,可以使用 `docker-compose pull` 命令更新。
+拉取完成容器之后可以使用 `docker-compose up -d` 重启容器。
+
+### 如果升级出现了问题需要怎么做
+
+由于每个人配置可能不尽相同,现在升级可能会出现程序无法运行的问题,此时删除掉所有以前的数据以及生成的配置文件后重启容器。
+然后在 WebUI 中重新配置一下即可。
+如果你是老版本升级,请先参考[升级指南](/changelog/2.6)。
+
+如果有上述没有覆盖的问题,请到 [ISSUE](https://github.com/EstrellaXD/Auto_Bangumi/issues) 按照 bug 模板反馈。
diff --git a/docs/faq/排错流程.md b/docs/faq/排错流程.md
new file mode 100644
index 00000000..f55af72f
--- /dev/null
+++ b/docs/faq/排错流程.md
@@ -0,0 +1,46 @@
+---
+title: 排错流程
+---
+
+## 💡 通用排错流程
+1. 如果 AB 无法正常启动,请检查启动命令是否正确, 当前版本正确的启动命令为 `/init`, 如果发现启动命令不正确且不会修改,请尝试重新部署 AB。
+2. 部署完 AB 之后请先查看 Log。如果运行如下说明 AB 运行正常,且与 QB 连接良好:
+ ```
+ [2022-07-09 21:55:19,164] INFO: _ ____ _
+ [2022-07-09 21:55:19,165] INFO: /\ | | | _ \ (_)
+ [2022-07-09 21:55:19,166] INFO: / \ _ _| |_ ___ | |_) | __ _ _ __ __ _ _ _ _ __ ___ _
+ [2022-07-09 21:55:19,167] INFO: / /\ \| | | | __/ _ \| _ < / _` | '_ \ / _` | | | | '_ ` _ \| |
+ [2022-07-09 21:55:19,167] INFO: / ____ \ |_| | || (_) | |_) | (_| | | | | (_| | |_| | | | | | | |
+ [2022-07-09 21:55:19,168] INFO: /_/ \_\__,_|\__\___/|____/ \__,_|_| |_|\__, |\__,_|_| |_| |_|_|
+ [2022-07-09 21:55:19,169] INFO: __/ |
+ [2022-07-09 21:55:19,169] INFO: |___/
+ [2022-07-09 21:55:19,170] INFO: Version 3.0.1 Author: EstrellaXD Twitter: https://twitter.com/Estrella_Pan
+ [2022-07-09 21:55:19,171] INFO: GitHub: https://github.com/EstrellaXD/Auto_Bangumi/
+ [2022-07-09 21:55:19,172] INFO: Starting AutoBangumi...
+ [2022-07-09 21:55:20,717] INFO: Add RSS Feed successfully.
+ [2022-07-09 21:55:21,761] INFO: Start collecting RSS info.
+ [2022-07-09 21:55:23,431] INFO: Finished
+ [2022-07-09 21:55:23,432] INFO: Running....
+ [2022-07-09 22:01:24,534] INFO: [NC-Raws] 继母的拖油瓶是我的前女友 - 01 (B-Global 1920x1080 HEVC AAC MKV) [0B604F3A].mkv >> 继母的拖油瓶是我的前女友 S01E01.mkv
+ ```
+ 1. 如果出现如下 LOG,说明 AB 无法连接 qBittorrent,请检查 qBittorrent 是否正常运行,如果 qBittorrent 正常运行,转跳 [网络问题](/faq/常见问题#🌍-网络链接) 部分进行排查。
+ ```
+ [2022-07-09 22:01:24,534] WARNING: Cannot connect to qBittorrent, wait 5min and retry
+ ```
+ 2. 如果出现如下 LOG,说明 AB 无法连接到 Mikan RSS,请转跳到 [网络问题](/faq/常见问题#🌍-网络链接) 部分进行排查。
+ ```
+ [2022-07-09 21:55:21,761] INFO: Start collecting RSS info.
+ [2022-07-09 22:01:24,534] WARNING: Connected Failed,please check DNS/Connection
+ ```
+3. 如果此时 QB 中没有下载任务,请转到 RSS 自动下载规则页面,检查 AB 建立的规则是否正确。
+ 1. 查看 RSS 订阅,如果是正常的 RSS 图标,说明 RSS 订阅正常,如果是**问题图标**,说明 RSS 订阅有问题,请检查 qBittorrent 与 Mikan RSS 的连通性。
+ 2. 如果没有任何下载规则,请检查 RSS 订阅是否是空白,`filter` 是否设置太多过滤值,转跳 [过滤问题](/faq/常见问题#下载以及关键词过滤) 。
+ 3. 检查添加的规则是否是正确的,如果出现错误,请到 [issue](https://www.github.com/EstrellaXD/Auto_Bangumi/issues) 反馈。
+ 4. 如果有下载规则没有下载,点击规则,并且检查右侧是否命中条目。如果没有命中条目,请删除一下过滤值。
+ 5. 检查自动下载规则中「总是暂停」是否关闭
+4. 此时 QB 应该存在下载任务。
+ 1. 如果下载任务出现路径问题,请检查 QB 设置中的「保存管理」中的「默认种子管理模式」是否为「手动」,若不是请调整为「手动」。
+ 2. 如果下载全部为感叹号,或者下载路径中没有新建归类文件夹,请检查 QB 的权限。
+5. 如果上述排查均不能生效,请尝试重新部署一个新的 qBittorrent。
+6. 如果仍然无效,请带着 LOG 到 [issue](https://www.github.com/EstrellaXD/Auto_Bangumi/issues) 反馈。
+
diff --git a/docs/home/index.md b/docs/home/index.md
new file mode 100644
index 00000000..284e5140
--- /dev/null
+++ b/docs/home/index.md
@@ -0,0 +1,88 @@
+---
+title: 项目说明
+---
+
+
+
+
+
+