Rss 简介
Rss
RSS(全称:RDF Site Summary;Really Simple Syndication),中文译作简易信息聚合,也称聚合内容,是一种消息来源格式规范,用以聚合经常发布更新资料的网站,例如博客文章、音频或视频的网摘。
简单来说RSS是一个能让你在一个地方订阅各种感兴趣网站的工具。
Rsshub 简介
Rsshub
RSSHub是一个开源、简单易用、易于扩展的 RSS 生成器 ,可以给任何奇奇怪怪的内容生成 RSS 订阅源 。 它可以为一些不提供Rss源的网站生成适配Rss地址 ,支持适配的网站具体可以详见官网 支持 | RSSHub
Rsshub部署
- 域名(1.服务器IP地址解析到域名)
- 服务器(2.服务器安装宝塔面板)
- 安装Docker(3.宝塔面板→软件商店→Docker管理器)
- 安装PM2管理器(4.宝塔面板→软件商店→PM2管理器)
1.配置Docker获取官方镜像
获取官方镜像
- 如果启动报错请卸载Docker再重新安装
- 镜像管理→镜像名称
diygod/rsshub
2.创建Docker容器
创建容器
- 容器端口1200映射到服务器端口1200服务器
- 目录 /www/wwwroot/rsshub/可以读写 容器目录/usr/src/app/
- 内配配额 自定义
3.宝塔创建站点
添加站点
- 配置域名
- 选择根目录
/www/wwwroot/rsshub
- PHP版本选择
纯静态
4.设置反向代理
反向代理
- 目标URL:
http://127.0.0.1:1200
- 站点设置中找到反向代理并配置,以便可以通过域名访问Rsshub服务。
- ~注意打开开启缓存的功能(图中没有打开)~
5.Rsshub部署成功
- 这里的域名已配置SSL,配置SSL可以在网站设置里使用宝塔自带的申请功能申请,保存启用即可。
如果访问RssHub访问主页正常,而指向订阅源出现504 Gateway Time-out时请重启Docker!!!不行重启
但如果遇到一些禁止跨域的网站,例如 图片加载不出来或无法访问 ,这时候你可以选择公共的跨域服务https://cors-anywhere.herokuapp.com/
,在你的Rsshub地址前面加上这个网址,例如我的微博Rss完整地址为:https://corsanywhere.herokuapp.com/https://rss.nfxwblog.com/weibo/user/5092387028
,weibo/user/5092387028其中 数字代表账号ID , 跨域服务地址+(Rsshub地址+微博ID ),使用公共跨域服务速度会慢很多,推荐自建跨域服务, 自建跨域服务详见下文 。
搭建跨域服务
1.下载安装proxy
#进入网站根目录
cd /www/wwwroot/
git clone https://ghproxy.com/https://github.com/Rob--W/cors-anywhere.git
cd cors-anywhere/
yum install npm -y
npm install
- 上述Git命令已经添加Github文件代理加速下载,可以直接使用上述命令完成安装
- ~由于国内访问网络问题,上面的github克隆速度太慢的话,你可以用这个方法,直接下载源文件解压上传到你的服务器~ Github下载 或者直接点击下载我保存的源文件 点击下载
- 下载完成解压上传到服务器→
cd cors-anywhere-master
→yum install npm -y
→npm install
- 如发生
node: relocation error: /lib64/libnode.so.93: symbol FIPS_selftest, version OPENSSL_1_1_0g not defined in file libcrypto.so.1.1 with link time reference
错误请参考文章CentOS7.9安装Nodejs爬坑 )
2.PM2管理器 添加项目
添加启动文件
- 选择刚解压的文件路径
- 添加启动文件为server.js
跨域服务
- 点击映射然后配置跨域服务域名
3.跨域服务搭建完成
跨域服务
- Rsshub地址:
https://rss.mou.ge/
- 跨域服务地址:
https://proxy.mou.ge/
- rss.和proxy.二级域名,需要你在域名解析处自行解析记录,配置https可以前往FreeSSL这个网站自行申请SSL,步骤简单快捷,必须两个域名都申请SSL!!!申请成功后,证书与秘钥导出格式为Nginx,然后到宝塔站点管理部署SSL处填入自定义SSL信息即可,不会的话请百度,或给我留言。如果嫌麻烦直接使用我的就行。