关于思源笔记
关于思源笔记
sevePath与思源
sevePath与思源
思源从版本1.9.8之后规定必须设置servePath绑定地址,即仅限指定地址访问。
比如,部署的时候设置的–servePath=127.0.0.1:6806,那么仅能访问127.0.0.1:6806访问,不可以0.0.0:6806或其他地址访问。
启动容器时若不设置–servePath,我们能够看到docker logs报告必须设置servePath。
该设置的好处显而易见:访问者仅能从指定地址访问,提高了思源的安全性。
弊端:不能使用隐性解析方案。
笔者喜欢在每个服务器部署一个思源笔记。且笔者部署的每一个思源都是使用隐性解析方案的。
关于此处servePath在官方文档的说明,可以使用nginx设置反向代理来隐藏地址,下面我们来看一下隐性解析与反向代理的区别。
隐性解析
隐性解析
隐性解析属于应用层。我们在设置域名解析的时候,一般设置为类型A解析。而隐性解析属于转发。
转发
转发
转发一般分为两种,一种是显性转发,一种是隐性转发。
显性转发
显性转发
显性转发即访问后跳转到所设置的转发域名
如 我们将三级域名a.baidu.com设置显性转发为b.baidu.com,则访问a.baidu.com时候,url会显示b.baidu.com。
隐性转发
隐性转发
隐性转发即访问后跳转到所设置的转发域名,但 url显示的为我们访问的域名。
如 我们将三级域名a.baidu.com设置隐性转发为b.baidu.com,则访问a.baidu.com时候,url会显示a.baidu.com。
隐性转发的好处为:我们可以隐藏访问的具体地址。比如说我们在使用隐性转发,三级域名a.baidu.com设置隐性转发为b.baidu.com,则我们使用a.baidu.com访问其文件夹/file,具体路径为b.baidu.com/file,但url则显示a.baidu.com。也就是我们使用a地址去访问b地址下的任意文件,隐性转发下的地址栏是不会变的,只显示a地址。
反向代理
反向代理
反向代理这里指基于思源官方文档的反向代理,也就是基于本机的反向代理。
我们在地址为172.0.0.1的服务器内配置nginx,在配置文件*.conf里面设置
listen 80
proxy_pass 127.0.0.1:6806
server_name siyuan.baidu.com
其中,siyuan.baidu.com在域名解析设置为A类型解析到172.0.0.1。
那么我们访问siyuan.baidu.com时,相当于访问地址为172.0.0.1公网服务器的内网地址127.0.0.1:6806。
隐性解析与反向代理方案的区别
隐性解析与反向代理方案的区别
不同于隐性解析的是,改方案无法隐藏访问地址。
比如我们访问服务器内172.0.0.1/data/1.sy,那么访问地址为siyuan.baidu.com/data/1.sy。
若隐性解析方案访问172.0.0.1/data/1.sy,则地址栏显示仍然是siyuan.baidu.com(此处的baidu.com解析为A类型127.0.0.1,siyuan.baidu.com解析为隐性baidu.com:6806)
版本>1.9.8与方案
版本>1.9.8与方案
通过上面的描述我们可以知道,大于1.9.8的版本是不能够使用隐性解析方案访问思源的。
我们来对思源的判定简单做一下分析。
我们可以看到在conf.json做了访问限制。
笔者在部署的时候尝试了设置两个servePath,
即–servePath=baidu.com.6806 –servePath=siyuan.baidu.com。
测试发现,该情况下两个地址均无法进入思源。(测试时使用笔者的域名,非baidu.com。此处仅示例)。
以上即关于大于1.9.8的版本无法使用隐性解析方案访问的总结。
存储地址
存储地址
关于存储地址,注意到本段以前图片的读者会发现,思源的存储地址是在容器内。我们来看一下思源的存储说明与实际地址。
官方说明如下
即思源存储于容器内的工作文件。
基于ubuntu20.04tls部署的思源
docker pull b3log/siyuan
docker run –name siyuan -it -d –restart=always -v /usr/local/software/siyuan/data/SiYuan:/root/Documents/SiYuan -p 6806:6806 b3log/siyuan
(老版本无需设置servePath)
那么实际存储地址为/var/lib/docker/overlay2/[容器完整id]/diff/home/siyuan/Documents/SiYuan
希望开发者以后可以将思源的保存地址允许设置到本机的root下,或本机的/home下的文件夹内吧。
原文链接:https://www.cnblogs.com/kaydenlsr/p/16151546.html