球球在催我水一篇家里搭建网站的文章,我最近也试了一下。具体的思路如下:

  1. 在家里的服务器上部署好环境,并搭建网站。
  2. 有公网IP的话做好端口映射,或者是内网穿透。
  3. 做好DNS动态解析,绑定好域名。
  4. 在DNS服务商设置加速域名,并选择刚才的域名进行回源。顺利取消端口号。

国内的CDN商一定要备案域名!!!没有的话建议做显/隐性转发!

部署环境

部署环境我想了几种方案,因为家里软路由上装的是esxi,所以想过搞一个liunx的虚拟机,然后再装宝塔面板。后来为了简单,还是在群晖上装一个宝塔面板的docker版本。

  • 所以首先是下载映像。我选择的是pch18/baota这个版本,详细的文档都是中文写的,非常的友好。

  • 下载完成之后,作者是建议使用host模式去进行启动。我的话因为前段时间学会了那个独立IP的玩意,所以在命令行下输入docker create --net=emby --name=baota --ip=192.168.2.80 pch18/baota新建了一个容器。容器的名称是baota,ip地址是192.168.2.80

  • 容器建立好之后就要配置参数了,点开之后先把文件夹映射出来。

  • 接下来是映射端口,其中443、80是网页的端口。8888是宝塔面板的默认登陆端口,888是数据库的登陆端口。其中443、80本地端口与容器端口不能设置成一样的,这应该是个bug,因为我这个ip是独立的,不会存在什么端口占用的情况。我随便填了一个,过会测试的时候,其实依旧是使用的80、443。
  • 设置完成之后就可以启动了,默认的账号是username,默认的密码是paassword。然后在浏览器输入192.168.2.80:8888进行登陆。

  • 我在这一步碰壁了,明明是默认的账号密码,确还是登陆不上去。只好在docker的终端机里输入bt然后进行密码重置的工作。
  • 登陆进宝塔面板后发现默认的建站环境都已经安装完成。

搭建网站

  • 在这里我就只简单的搭建一个网站演示一下。我在这里填入了3个地址,test.xhhdd.cc是用来DDNS解析的域名,blog.xhhdd.cc是用来做加速域名,192.168.2.80是因为要本地访问。

  • 我上传了typecho的程序上去,并输入192.168.2.80进入初始化界面。然后成功设置好网页。

设置动态解析与加速域名

端口映射

把刚才的端口映射出去,在路由器上做了设置。那么现在通过外网IP+端口就能够进行访问。
不过我不会内网穿透,因为家里是外网IP,外网穿透可能要稍微多几个步骤。

动态解析

动态解析我就不累述了,之前写过。因为我是阿里云的域名,所以也是在docker下安装一个容器来实现。


那么作好动态解析之后,就可以通过test.xhhdd.cc+端口来进行访问了。

加速域名

这里我是用的是腾讯云的CDN,它回源的时候可以填写域名+端口的形式,不过很重要的一点就是,它一定要备案域名,那么有些朋友可能就是因为域名备案不是很方便,才在家里部署的,这个时候那我就比较推荐做一个url转发,显性的比较简单,隐形的就要考虑一下支不支持,ssl会不会掉等问题。

  • 首先打开腾讯云内容分发网络的界面,并点击添加域名。

  • 加速域名填写一个不冲突的即可,我的已经填过了,所以有提示。源站地址这里填写我们刚才做好动态解析与端口映射后能访问的地址。回源host填写加速域名即可,其他的不做改变。


  • 配置好之后去域名管理商那里添加一条指向腾讯云的CNAME记录。
  • 大功告成,现在输入blog.xhhdd.cc即可顺利打开网站。

总结

如果是没有备案域名,除了做显性或者隐性转发之外,还可以试一下能不能挂上国外的CDN商。可惜我不会用...
这一篇水的比较粗糙,关于CDN的缓存规则,ssl证书之类的我还没有去研究。主要也是暂时没有太多把网站搬回家的需求,那就先留个底,记录一下大概的流程。

最后修改:2021 年 07 月 27 日
如果觉得我的文章对你有用,请随意赞赏