vercel重写隐藏端口和源地址
本片文章的来源呢,是在群晖搭建了blog,但是每次都端口加域名访问令我很难受
本章内容,需自己已经设置过ddns和upnp
今天的例子就以的halo博客为演示(本博客以替换为hexo)
感谢halo博客的开源
感谢vercel的免费资源
开源链接:GitHub - halo-dev/halo: 强大易用的开源建站工具。
halo官网:Halo 建站 - 强大易用的开源建站工具
halo生态:GitHub - halo-sigs/awesome-halo: 与 Halo 相关的周边生态资源列表
vercel官网:Vercel: Develop. Preview. Ship. For the best frontend teams
先做准备工作,我们是准备在群晖上搭建halo,可以完全使用docker-compose部署,也可以使用数据库在群晖安装,其他在docker
我采用的就是数据库在群晖halo在docker的模式
准备工作
先做准备工作,在群晖的商店安装好docker和MariaDB+mysqlphpadmin+node
域名绑定
我们先要做一下域名解析,之前做过ddns的会有一个泛解析
我们需要为blog.xxxxx.com做一个解析,解析到vercel
以腾讯云为例
记录值填 cname-china.vercel-dns.com
MySQL设置
首先要现在打开Maria DB创建一个MySQL密码,并开启TCP/IP连接
然后在phpmyadmin里面创建一个名字叫halo的数据库
安装halo
准备工作就做完了,我们开始安装halo
我们先要开启群晖的ssh功能,建议更改默认端口
然后用ssh软件连接到群晖
我们回到网页端,创建一个halo的文件夹用来存放halo的数据
创建好目录后,我们进入ssh工具,进入刚刚创建好的目录
1 | cd /xxxxxx/xxxxx/xxx |
目录可以去网页端复制,属性那里会有位置复制进入即可
创建一个docker-compose.yaml
1 | version: "3" |
启动 Halo 服务
1 | docker-compose up -d |
实时查看日志
1 | docker-compose logs -f |
启动成功后我们去放行你设置的端口没有修改就是默认8090
如果你在域名解析服务商创建了泛解析的话你可以随意地址加上端口号
例如b.xxxx.com:8090
反代halo
这样你就发现访问成功了,但是他是http形式,我们先用群晖自带的反代给他加上ssl
在登陆门户—高级—反向代理服务器
根据自己的实际情况填写即可
vercel设置
然后我们去vercel用GitHub账号登陆即可
然后根据提示绑定自己的仓库即可
vercel绑定完成后,我们开始下一步
在ssh命令行使用
1 | npm -i g vercel |
安装完成后输入
1 | vercel login |
选择登录方式登录即可
然后在群晖网页端创建一个文件夹
也可以用命令行创建
然后在创建好的文件下创建一个json文件,并命名
比如我创建的是blog.json
1 | { |
详解使用 vercel.json 配置项目 |韦塞尔文档 在文件写入上述代码
然后回到ssh命令行,进入创建的文件夹
输入以下命令
1 | vercel -A blog.json --prod |
此命令会在vercel创建一个项目
我们去vercel看一下
看见项目已经创建完成了
我们点进去然后在右上角
点击View Domains
进入后是这样的
这个时候我们要在Domains下面输入,我们在docker输入的网址了
点击add他会自己检测并添加ssl证书
这个时候我们就可以去用blog.xxxxx.com这个域名访问blog了,而且没有端口,并且隐藏了真实源