首页
关于
统计
留言
友链
壁纸
Search
1
幻兽帕鲁自建多人游戏专属服务器喂饭教程
5,846 阅读
2
网页秒开--旁路由openWRT上ADguard Home的使用体验
4,398 阅读
3
CloudFlare workers.dev域名DNS污染 国内无法访问解决办法
3,480 阅读
4
腾讯云在线Web Shell初体验
2,416 阅读
5
腾讯云在线WebShell终端使用体验
2,175 阅读
大数据
网站源码
大学生活
技术分享
生活琐事
每日英语
国二考试
登录
Search
标签搜索
腾讯云
源码
轻量应用服务器
教程
教训
群晖
灯笼
技术
腾讯云轻量
轻量应用
CDN
sll
交换机
网络
AD钙
邮局
Bitwarden
docsify
星橙
累计撰写
38
篇文章
累计收到
50
条评论
首页
栏目
大数据
网站源码
大学生活
技术分享
生活琐事
每日英语
国二考试
页面
关于
统计
留言
友链
壁纸
搜索到
38
篇与
星橙
的结果
2021-05-26
docsify的配置+全插件列表
本篇文章来自好友肥子哥,原文连接:https://xhhdd.cc/index.php/archives/80/引子有天球球在群里说handsome作者的文档网站还挺好看的,不知道用什么模板做的。有个大佬立马告诉我们是用的docsify。然后球球就去踩坑了,去研究怎么安装。docsify的官方文档有一说一,是还挺好看的。里面的内页也是简洁明了,是我喜欢的类型。它专门用来渲染md文件,和适合用markdown来写作的人,用来做文档站什么的。安装流程虽然说这样我也算是打开了,但是具体怎么配置我还一概不知,接下来我就研究了文档,然后观察了球球发给我的文件夹。结构https://cdntc.xhhdd.cc/2021/04/02/16172931195282.png)网站的根目录下很多文件,乍一看非常的复杂,但是实际上我们可以简单的分成三个板块。index.html是最核心的一个文件,它里面加载了docsify的css、js,而且像网站的名字、ico、等基本的信息,还有插件的配置参数都是在这个文件当中。docs文件夹里面装的都是md文件,网站会渲染这些用markdown语法写成的文章在前台展示出来。其他的md文件是与index.html衔接的有联系的一些文件,比如说侧边栏的目录、页脚文件等。那知道了结构之后,我们首先要对index.html文件进行一个设置。本小白到了这一次才对html语法有些微了解,所以准备从0开始自己完整的写好这个文件。写html文件我知道最大的标签是<html>,它包裹着里面的内容。然后最开始是<head>的标签,是头的意思吗?所以写在最开头哈哈哈哈~<head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> <meta name="renderer" content="webkit"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <!-- 网站描述+关键字+作者 --> <meta name="description" content="邓邓的个人wiki站,收集、整理、提炼所学的知识"> <meta name="keywords" content="wiki,docsify,音乐爱好者"> <meta name="author" content="xhhdd"> <title>邓邓的零食橱</title> <!-- docsify的主题样式 --> <link rel="stylesheet" href="//vox.cab/npm/docsify/lib/themes/vue.css"> <!-- 侧边栏插件的样式 --> <link rel="stylesheet" href="//vox.cab/npm/docsify-sidebar-collapse/dist/sidebar.min.css" /> </head>好了以上是我写的内容<meta charset="UTF-8">应该就是声明一下字符编码http-equiv不是很了解,说是http的请求头,我顺便在下面加了一行,是从handsome那里加过来的,据说是针对国内浏览器的优化viewport应该是搞那个什么移动设备适配的,我还去查了哪个参数是对应锁定宽度,哪个参数是不允许放大缩小之类的然后那些网站的描述不知道是不是这样写的,我也依样画葫芦...最底下的就是一些样式文件,我也是直接复制粘贴,要什么就粘贴什么好了之后,接下来就是<body>里面的内容了<body> <!-- 定义加载时的显示 --> <div id="app">很快!等我一下!</div> <script> window.$docsify = { //通用设置 // ----------------------------------------------------- // 加载自定义导航栏,需要目录下有_navbar.md文件 loadNavbar: true, </script> <!-- docsify的js依赖 --> <script src="//vox.cab/npm/docsify/lib/docsify.min.js"></script>这个看起来好像有点复杂。首先最上面<div id="app">很快!等我一下!</div>这个是指定加载页面等待时显示的内容然后中间<script>标签里面的是window.$docsify 的配置参数,这个非常的重要,一些基本的配置项目都是在这里实现的,我们在这里照着文档一个一个的选择自己需要的参数填上去。最后是加载js的地方,过会装插件的时候会用的上。这里要特别说一下,我在看文档的时候,上面是这么写的我以为是下面这种写法window.$docsify = { maxLevel: 4, }; window.$docsify = { loadNavbar: true, loadNavbar: 'nav.md', };其实不用这么复杂,window.$docsify只需要写一个就可以了。window.$docsify = { maxLevel: 4, loadNavbar: true, loadNavbar: 'nav.md', };在这里我吃过无数次亏的就是逗号!逗号!要不就是最后一个写了逗号,要不就是中间没写逗号真的是气死我了当然各位大佬估计不会犯本小白这样的错误...所以到这里呢,我们的html文件基本上就写好了,在写的过程中就会发现,有些配置参数是需要别的文件支持的。比如说开启侧边栏,就需要在根目录下建立一个_sidebar.md文件,然后在里面写好内容。也就是我们刚才上文中所说的第三类文件。接下来,我们来看一下插件怎么安装我们大部分的插件安装都是做两件事情加载js:就是把它给你的这一行代码,复制粘贴到<body>标签的最下方添加配置参数:就是把这些参数复制粘贴<body>下的window.$docsify中简而言之!都是在index.html中进行操作!而且就是复制粘贴!那根据文档说的,我们就会这么来写<body> <!-- 定义加载时的显示 --> <div id="app">很快!等我一下!</div> <script> window.$docsify = { //字数插件 count:{ countable:true, fontsize:'0.9em', color:'rgb(90,90,90)', language:'chinese' } } } </script> <!-- docsify的js依赖 --> <script src="//vox.cab/npm/docsify/lib/docsify.min.js"></script> <!-- 字数插件 --> <script src="https://vox.cab/npm/docsify-count@latest/dist/countable.min.js"></script>好了,大概就是这个意思。下文中我附上了docsify所有插件的链接,和我能看懂的插件的详细安装方法,可以去参考一下。补充一下侧边栏文件_sidebar.md的写法我们新建一个_sidebar.md之后在里面写上文字,都会在侧边以文字的形式展示出来,能正常的解析一些md语法与html的语法(如加粗,指定颜色等)如果想要链接到md文档,跟md里图片的语法非常相像,方框里是目录的名称,括号里是md文件的地址。此时侧边栏的会出现docs,并且点击即可查看渲染好的docs.md- [docs](docs/docs.md)如果想要多级目录,请参照底下侧边栏插件的详细用法以上,index.html文件就是这些内容,接下来发一下我写的,可以复制粘贴到网站根目录看看效果。<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> <meta name="renderer" content="webkit"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <!-- 网站描述+关键字+作者 --> <meta name="description" content="邓邓的个人wiki站,收集、整理、提炼所学的知识"> <meta name="keywords" content="wiki,docsify,音乐爱好者"> <meta name="author" content="xhhdd"> <title>邓邓的零食橱</title> <!-- docsify的主题样式 --> <link rel="stylesheet" href="//vox.cab/npm/docsify/lib/themes/vue.css"> <!-- 侧边栏插件的样式 --> <link rel="stylesheet" href="//vox.cab/npm/docsify-sidebar-collapse/dist/sidebar.min.css" /> </head> <body> <!-- 定义加载时的显示 --> <div id="app">很快!等我一下!</div> <script> window.$docsify = { //通用设置 // ----------------------------------------------------- // 加载自定义导航栏,需要目录下有_navbar.md文件 loadNavbar: true, // 开启侧边栏,需要目录下有_sidebar.md文件 loadSidebar: true, // 读取md文件中最大几级目录 subMaxLevel: 2, // 切换页面后跳回页面顶部 auto2top: true, // 指定开始页 homepage: '_home.md', //开启封面页,需要目录下有_coverpage.md文件 coverpage: true, // 侧边栏左侧的logo logo: '', // 侧边栏顶部的标题 name: '邓邓的零食橱', // 点击标题后的跳转地址 nameLink: '/', // 禁用emoji noEmoji: true, // 移动设备合并导航栏到侧边栏 mergeNavbar: true, // 加载_404.md notFoundPage: true, // 滚动到锚点是与顶部的距离 topMargin: 90, //插件设置 // ----------------------------------------------------- // 搜索配置 search: { maxAge: 86400000, paths: 'auto', placeholder: '搜索', noData: '找不到结果', depth: 4, hideOtherSidebarContent: false, namespace: '邓邓的零食橱' }, // 字数插件 count:{ countable: true, position: 'top', margin: '10px', float: 'right', fontsize:'0.9em', color:'rgb(90,90,90)', language:'chinese', localization: { words: "", minute: "" }, isExpected: true }, // 分页导航插件 pagination: { previousText: '上一卷', nextText: '下一卷', crossChapter: true, crossChapterText: true }, // 文本高亮 'flexible-alerts': { style: 'flat', note: { label: "信息" }, tip: { label: "提示" }, warning: { label: "注意" }, attention: { label: "切记" } }, sidebarDisplayLevel: 2, // 页脚信息插件 loadFooter: true, loadFooter: '_footer.md' }; </script> <!-- docsify的js依赖 --> <script src="//vox.cab/npm/docsify/lib/docsify.min.js"></script> <!-- 搜索 --> <script src="//vox.cab/npm/docsify/lib/plugins/search.min.js"></script> <!-- 图片放大缩小支持 --> <script src="//vox.cab/npm/docsify/lib/plugins/zoom-image.min.js"></script> <!-- 字数插件 --> <script src="https://vox.cab/npm/docsify-count@latest/dist/countable.min.js"></script> <!-- 分页导航 --> <script src="//unpkg.com/docsify-pagination/dist/docsify-pagination.min.js"></script> <!-- 文本高亮 --> <script src="https://unpkg.com/docsify-plugin-flexible-alerts"></script> <!-- 侧边栏扩展与折叠 --> <script src="//vox.cab/npm/docsify-sidebar-collapse/dist/docsify-sidebar-collapse.min.js"></script> <!-- 页脚信息 --> <script src="//vox.cab/npm/@alertbox/docsify-footer/dist/docsify-footer.min.js"></script> </body> </html>docsify的插件docsiff有很多插件,但是没有中文版的,我尽我所能把我会的去试了一下,希望能帮到大家。我们上文说到这些插件的安装方法都是比较统一的把js代码复制粘贴进index.html这个文件在index.html中的window.$docsify 下填写好配置参数分享插件docsify-shareA Plugin to add share button in your docsify. @coroo.这是一个分享的插件,安装之后就会在页面的右下角出现一个分享图案,目前支持以下几个平台首先是js代码<script src="//unpkg.com/docsify-share/build/index.min.js"></script>然后是配置参数<script> window.$docsify = { share: { reddit: true, linkedin: true, facebook: true, twitter: true, whatsapp: true, telegram: true, } };</script>再具体一点去它的官方页面看吧~不过我可能是没学会,那个图标是出现了,也可以跳转到对应的软件,可就是没有下文,不知道怎么分享出去了~字数插件docsify-countAdd word count for markdown files of docsify.(添加字数统计)@827652549.这个插件与阅读进度条插件不兼容这是一个字数统计插件,它提供了统计中文汉字和英文单词的功能,并且排除了一些markdown语法的特殊字符例如*、-等首先是添加js<script src="//unpkg.com/docsify-count/dist/countable.min.js"></script>or<script src="https://vox.cab/npm/docsify-count@latest/dist/countable.min.js"></script>然后是配置参数window.$docsify = { count:{ countable: true, position: 'top', margin: '10px', float: 'right', fontsize:'0.9em', color:'rgb(90,90,90)', language:'chinese', localization: { words: "", minute: "" }, isExpected: true }}按理来说在words与minute里面是可以填上自己自定义的字的,不知道为什么操作不了...docsify-rtlAdd rtl and bidi support to docsify @koliberr136a1.这个没看懂,不知道干嘛的。描述上说是It will automatically changes the body, side, bdo directions加载远程文档docsify-remote-markdownLoad markdown docs from remote. @JerryC.不太清楚这个功能有啥用,加载一个远程的md文件。那我为什么不直接放在服务器呢?反正我的话不是很用得上。分章节按钮docsify-paginationPagination for docsify @imyelo.这是一个分章节的插件,它会在文章的底部提供一个按钮跳转到下一个(或上一个)MD文件。文件的排序是根据左侧的侧边栏来的。其中下一章节这几个字也可以进行自定义,变成下一卷、下一页之类的。首先是加载js<script src="//unpkg.com/docsify-pagination/dist/docsify-pagination.min.js"></script>然后是配置参数window.$docsify = { // ... pagination: { previousText: '上一章节', nextText: '下一章节', crossChapter: true, crossChapterText: true, },}这个能够配置的比较少,看一眼基本上懂了。绘图docsify-plantumlPlantUML for docsify @imyelo.plantuml应该是比较熟悉了,是一个做流程图的插件。填入代码那就会出来以上这个效果不过我基本上用不到这玩意~~绘图docsify-pumlDocsify plugin to parse PlantUML content @indieatom.跟上面那个一样,也是一个做流程图的插件代码复制框docsify-copy-codeA docsify plugin that copies Markdown code block to your clipboard @jperasmus.这是一个代码的复制弹框,说实话真的很朴素。按下复制按钮之后,会滑动出一个复制成功的字,不过不是很好截图就没有弄了,主要真的不是很好看...不过这个插件有一个比较特别的地方,就是会支持多语音的那种文档,可以统一在配置文档那里调整。看完所有的插件回来,我发现只有这一个代码复制插件...vuedocsify-demo-box-vueWrite Vue demo in docsify with instant preview and jsfiddle integration @njleonzhang.不太能看懂是什么意思~应该是那种页面上的代码模拟器?reactdocsify-demo-box-reactWrite React jsx demo in docsify with instant preview and jsfiddle integration @njleonzhang.跟上一个是同一个作者,好像插件的性质是一样的docsify-edit-on-githubAdd Edit on GitHub button on every pages @njleonzhang.这个插件应该是针对托管在github上的网站,可以进行一个快速的编辑。标签卡docsify-tabsA docsify plugin for displaying tabbed content from markdown @jhildenbiddle.这个是大致的效果<!-- tabs:start -->...<!-- tabs:end -->语法上来看的话不是很复杂,本来我是想试一下的。但是现在遇到的问题就是从handsome转过来的时候,很多这样的语法不适配。我在想万一以后我还要换的话怎么办...那就更麻烦了,最好还是通用会比较好。KATEXdocsify-katexA docsify plugin for rendering LaTex math equations @upupming.katex是一个数学公式引擎,懂得都懂,我直接放弃。插入PDFdocsify-pdf-embedA docsify plugin for embedding PDF on any page @lazypanda10117.这个插件就是用来插入PDF的,我也是用不上~文本高亮docsify-plugin-flexible-alertsA docsify plugin to convert blockquotes into beautiful and configurable alerts using preconfigured or own styles and alert types. @fzankl.这个其实跟handsome里面那个高亮提示文本差不多一个意思。这个插件一共是支持四种高亮形式,分别是note、tip、WARNING、ATTENTION,用蓝绿黄红来进行一个区分。(handsome也是这样~这是一个通用的范式吗?)然后看上图,左右两边分别是不同的样式,左边的框框是空的,右边的框是填充了颜色的。本来我之前想说,像这种特别语法,最好还是不要用,不然以后万一要换平台的话真的很麻烦。但是.....但是这个真的太好看了。首先是加载js<script src="https://unpkg.com/docsify-plugin-flexible-alerts"></script>如果不配置参数的话,那么就是上图左边的样式。如果需要右边的样式的话,则需要<script> window.$docsify = { 'flexible-alerts': { style: 'flat' } };</script>也就是说styl默认是call out上图左边的样式,指定为flat即为右边那种颜色填充的样式。接下来怎么使用呢?在文档中输入> [!tip]> 填写你要的内容下图就是实际效果因为我刚才指定了style为flat,所以全局都是这种默认用颜色填充的框如果想这一条文本单独换成callout也是可以的,只需要> [!tip|style:callout]> 填写你要的内容则会变成下图的效果以上,简单总结一下。这个插件拥有两种显示样式、四种高亮文本框,可行进行全局设置样式或单个文本指定样式。基本的使用就到这里了~接下来是进阶的用法自定义高亮标题自定义高亮文本框首先是自定义高亮标题的配置参数<script> window.$docsify = { 'flexible-alerts': { note: { label: "测试" } } };</script>那么就会显示如果想要单独指定高亮的标题也是可以的,这样也会出现上图的效果。> [!note|style:callout|label:测试]> 测试自定义然后是关于自定义高亮文本的样式,可以更换左上角的小图标、以及颜色自定义标题什么的 但是有点复杂,可以去作者的页面看一下~docsify-pdf-converterCreate PDF files based on your docsify project @meff34.这个是啥?PDF转换?我看到一开始的npm命令我就头大...评论系统docsify-commentoAppend commento section to the bottom of every page @ndom91.commento 是一个轻量级的评论系统,这个插件把commento嵌入到页面中。安装反正我是看不懂了,直接放弃~gif插件docsify-gifcontrolA docsify plugin that adds customizable player controls to GIFs. @adambergman from @gbodigital.我就喜欢这种简单易懂的插件,它可以控制gif的播放形式。比如点击播放,或者是鼠标放到图片上才进行播放。不过我没有放gif图的需求~就没有去弄了docsify-example-panelsA plugin for rendering slate alike right example panels.这个插件是令我百思不得其解,不知道它的功能是什么...翻译了也看不懂但是感觉它的实例网站又很不一样?是左右两栏?docsify-glossaryA plugin to create a simple glossary for common terms.glossary是词汇表的意思?我看到用法就是说要建立一个文件,然后使用的时候要用####四级标题包围...好吧,完全没懂。目录跳转docsify-tocAdd a Table of Contents to your site. @mrpotatoes.这个插件其实蛮实用的,设置以后会在右边出现一个目录跳转,点击以后可以跳转到对应的标题。也是先加载js<script src="https://unpkg.com/docsify-toc@1.0.0/dist/toc.js"></script>再加载stylesheet,一下这行代码放在head标签里<link rel="stylesheet" href="https://unpkg.com/docsify-toc@1.0.0/dist/toc.css">最后是配置参数window.$docsify = { toc: { scope: '.markdown-section', headings: 'h1, h2, h3, h4, h5, h6', title: 'Table of Contents', },}从上面也能看出来,标题的层级是可以自选的,比如只加载h2、h3最后就是关于这个插件出现的时机,因为在桌面端的话,左侧已经是有目录了,右边这个就显得比较多余。但是在手机浏览器上出现的话其实还不错。fontawesome icodocsify-fontawesomeAdd FontAwesome to documentation by tokens.好了,FontAwesome算是比较熟悉的了,之前打过很多交道了。这个正好可以配合上面那个文本高亮的插件一起使用,或者是别的目录什么地方,去插入图标这样子。docsify-footer-enhFooter Enhancement plugin.很尴尬,没看懂讲的啥~Mustachedocsify-mustacheA docsify plugin that allow preprocessing markdown documents with Mustache template engine.Mustache模板嘛,好吧,我不懂。bitbucketdocsify-bitbucketA docsify plugin that help using docsify with Bitbucket Server and Bitbucket Cloud.bitbucket好像也是github那种网站?两列布局docsify-slidesA plugin for creating slideshow-like pages.slides是ppt的意思?但这是一个两列布局的插件。配置挺简单的。首先是加载js<script src="//unpkg.com/docsify-slides/dist/docsify-slides.min.js"></script>然后不需要配置参数,只需要把下面的命令放到md文件就可以了<!-- slide:break -->or<!-- slide:break-# -->比如我选择放到文章的三分之一处,则文章的前三分之一会出现在网站的左边,剩下的三分之二会出现在网站的右边。又比如说我放到文档的中间则会出现下图的效果当然我也可以填写<!-- slide:break-30 -->则会变成上图那样。这个插件我好像没有太多的用处,不过说实话,有时候是觉得整个内容横着排列有点满,但是有些内容直接竖着排也会比较好看。还有就是上面两张图的实际上标题都没有对齐,显得比较难看。原作者说他用了什么空白标签对齐了高度,反正我是没搞明白是怎么回事...phaserdocsify-PhaserEnable Phaser code inside a docsify page.这个插件说能让Phaser代码在网站上跑起来,Phaser是搞游戏的,好像是~更新记录docsify-changelog-pluginIntegrates your changelog in a sweet panel.这个是搞那种更新记录的吧不过我用不上~横幅插件docsify-top-bannner-pluginAdd a simple and sweet banner at the top in order to announce something.这是一个横幅插件~可以用来做一个更新通知啥的~然后能够自定义很多参数~暗黑模式docsify-dark-modeAdd dark mode support in your docsify site.暗黑模式,可是我一直不是很喜欢,感觉看的不是很清楚。评论docsify-valineA docsify plugin that allows you to use a fast, simple & powerful comment system valine on your docsify pages.一个评论系统~emojidocsify-twemojiemojiA plugin that allow parsing all emoji in style of twemoji for docsify.(推特 emoji)引入推特版本的emoji,据说还比较全~可以看看中文版的安装指引评论系统docsify-livere An easy-installing plugin for awesome comment system LiveRe on your docs.(来必力评论插件)跟上一个插件一样,有个中文版本的安装指引这个插件说是支持国内常见的登录方式:QQ、微信、github、百度、微博等等选择框docsify-selectVariably render content with select menus in markdown.这是一款选择框工具,可以生成的选择框。选择不同的选项能展示不同的内容~而且跟之前的tab插件好像是兼容的还是有什么独特的联系~不过我想这个用的时候又是新的语法...我就不去折腾了绘图docsify-mermaidA plugin to render mermaid diagrams in docsify.这好像是markdown的绘图插件,总之也是生成各种流程图之类的东西。docsify-plugin-carbonA plugin to make you easy to add Carbon Ads to docsify.不懂跳过docsify-panguA docsify plugin for Chinese and English, numbers, symbols and automatically add spaces between. @sy-records.一个 docsify 插件:使用 pangu.js 给网页上的中文和英文、数字、符号之间添加空格。不明白为什么要这样,应该是我还没有这么高的需求支持gtlfdocsify-gtlfexplorerA plugin to embed a manipulable 3D model in your documentation.在网页上加载3D对象,gtlf格式的。封面图标docsify-cornerA enhancement plugin for more repo widgets in top right corner, such as Gitlab. @Koooooo-7这个插件可以让封面的右上角出现一个小图标,并且进行网址跳转。本来docsify会让这里出现github的小图标,然后这个插件会对其进行一个替换与自定义。不过我失败了,应该是以前属于docsify本身的配置没有弄好。操作还是蛮简单的,感兴趣的可以去看看。docsify-autoHeaderTurn your markdown into a cascading numbered document. Great for large documentation without manually numbering all the headings. @markbattistella自动给标题排序?有点没有弄明白是怎样的,照着设置了一下,但操作失败了。侧边栏页脚docsify-sidebarFooterAdd some links to the base of your sidebar - copyright year, company, Privacy Policy, Terms of Service.这个插件能够在侧边栏底部生成一些基本的信息,比如说什么版权之类的但是这个插件安装过程比较的坑~首先是加载js<!-- unpkg.com --><script src="https://unpkg.com/@markbattistella/docsify-sidebarfooter@latest"></script><!-- jsDelivr --><script src="https://vox.cab/npm/@markbattistella/docsify-sidebarfooter@latest"></script><!-- locally --><script src="docsify-sidebarfooter.min.js"></script>然后是配置参数<script>window.$docsify = { autoFooter: { name: String, // company display name (required) copyYear: Int, // start copyright year (required) url: String, // company url (optional) policy: Bool | String, // show Privacy Policy (optional) terms: Bool | String, // show Terms of Service (optional) cookies: Bool | String, // show Cookies Policy (optional) onBody: Bool // if true it is on the main doc }};</script>name就是填写公司的名字,填写的时候要记得加引号copyYear就是年份,填写的时候不需要加引号url就是网站链接,填写的时候要记得加引号底下就是一些关于其他信息的设置,可以选择开启并选择md的路径。不过不知道cookies之类的格式应该怎么写。但是到了现在,其实侧边栏还没有出现页脚的信息,我们还需要在index.html的body标签里添加<footer id="mb-footer"></footer>然后去_sidebar.md文件里面也添加上一行代码侧边栏插件docsify-sidebar-collapseSupport docsify sidebar catalog expand and collapse.这是我最要的功能了,它提供了给侧边栏进行多级分类,并且自动折叠,然后有两种展示的风格。其实风格二会比较明显的,只是那个蓝色的文件夹跟整体的风格有点不搭,要是我会自定义就好了。接下来就是安装插件的过程首先当然也是加载js<script src="//vox.cab/npm/docsify-sidebar-collapse/dist/docsify-sidebar-collapse.min.js"></script>接下来是风格的选择,放到head标签里风格一<link rel="stylesheet" href="//vox.cab/npm/docsify-sidebar-collapse/dist/sidebar.min.css" />风格二<link rel="stylesheet" href="//vox.cab/npm/docsify-sidebar-collapse/dist/sidebar-folder.min.css" />最后就是在_sidebar.md里面对目录进行一个书写了首先最基本的,就是通过不同的缩进确定分级,如下:- 一级目录 - 二级目录 - 三级目录我们可以观察到,最底层的目录的图标有点不一样,以上是展开的效果。添加文档的话。一般会有两种习惯的写法。文档永远放在最底层目录,文档这个层级不会出现子分类- 一级目录 - 二级目录1 - 三级目录1 - [文档] - 三级目录2 - [文档] - [文档] - 三级目录3 - [文档] - 二级目录2 - 三级目录 - [文档]文档不是最底层目录,文档下还有子分类- 一级目录 - 二级目录 - [文档](docs/1.md) - [文档](docs/1.md) - 三级目录 - [文档](docs/1.md) - [文档](docs/1.md)这种写法有时候容易起冲突,第一次试的时候,可能是其他的js之间影响了,或者说没配置好,结果侧边栏乱七八糟。第二次尝试的时候把多于的插件删掉了,当然也有可能是我子目录放在同级文档下的原因,总之写一下尝试一下就知道了。默认展开的层级设置我们在配置参数中添加sidebarDisplayLevel: 0数字0就代表不展开 只显示最表层的【一级目录】数字1的话就会展开二级目录。如下图:绘图websequencediagrams-docsifyA plugin to embed WebSequenceDiagrams right into your documentation.docsify-material-icons - Add Material Icons to documentation by tokens.好像也是一个绘图插件,不是很懂~Material icodocsify-material-iconsAdd Material Icons to documentation by tokens.这跟fontawesome一样是一个图标库广告位docsify-ethicaladsEthicalAds support for Docsify.这好像是放广告位的地方~哈哈哈哈!docsify-wikilinkA plugin that allows wiki internal link syntax by using double square brackets like [[pagename|link text]].这个插件我真的放弃了,看上去感觉还挺简单,实际上没懂。链接预览docsify-link-previewA plugin to render link previews.连接预览?我猜测就是把鼠标放到网站上,然后它就会有一个浮窗,预览网站内容~不过这个安装需要去别的地方申请api~我就先不弄了。docsify-pseudocodeA plugin to render pseudocode in docsify. @h-hg说是什么伪代码?也是我看不懂的玩意页脚信息docsify-footerA markdown _footer.md plugin for docsify-enabled sites. @alertbox.这个页脚信息感觉比上面那个侧边栏页脚要更加的适合我用。这是人家官方的效果,实际上是读取了一个md文件所以相对来说自定义程度要高很多。首先是加载js<script src="//vox.cab/npm/@alertbox/docsify-footer/dist/docsify-footer.min.js"></script>这里一定要非常非常的注意!一定要放在docsify自己的js依赖下方我一开始还以为位置、顺序是无所谓的,实际上页脚信息会加载不出来接着是配置参数window.$docsify = { loadFooter: true, loadFooter: '_footer.md',};其实就是两个参数,第一个是打开页脚功能,第二个是指定一个页脚的md文件,名字可以自定义。大概就是这样了~docsify-code-inlineEnables syntax highlighting for inline code as well, not just code fences. Never again will inline code look dull. @rakutentech额~也是跟什么代码啥的有关系备案信息docsify-beianA plugin to add Chinese Beian Information in docsify. @HerbertHedocsify-progress - A plugin to render reading progress in docsify. @HerbertHe.这是一个中文文档,其实不错的,添加备案号非常的方便,但是...这么来说的话,我可能还是会选择上面那个页脚插件,因为自由度会更高一点。阅读进度条docsify-progressA plugin to render reading progress in docsify. @HerbertHe.这个插件与字数插件不兼容这也是一个中文文档,会在页面顶部或者最底部出现一个根据阅读进度改变的横条。颜色、横条的粗细、位置都可以自定义。首先是加载js<script src="https://vox.cab/npm/docsify-progress@latest/dist/progress.min.js"></script>然后是配置参数window.$docsify = { progress: { position: "top", color: "var(--theme-color,#42b983)", height: "3px", } }很明显,从上到下就是位置、颜色、横条粗细的自定义iframe嵌入docsify-codeblock-iframeA plugin to provide markdown extra codeblock-iframe syntax support for docsify, just for supporting iframe rendering securely. @HerbertHe.哈哈 这个也有中文文档~可以自行去看一下,是关于什么iframe嵌入之类的~、绘图docsify-krokiA plugin to integration kroki into docsify. @zuisong.这个也是个作图软件,好像跟上面提到的plantuml以及mermaid都有点关系~绘图docsify-chartyAdd some charts and graphs to your docsify website. Pie charts, doughnut charts, sectional, bar and column graphs, line and plot graphs, and a review block. Everything you need if you need to visualise some numbers!这也是专门做图表的工具~
2021年05月26日
1,701 阅读
0 评论
5 点赞
2021-05-15
Bitwarden--彻底更新我的密码管理系统
从小学拥有第一个qq号开始,记密码就成为了生活中一件重要的小事。到了中学,网购开始盛行,各种软件、网站的账号也越来越多,我只好在本子上记录下来。其中还包括朋友的生日,一些关键的信息等等。直到大学,才想起直接放到电脑上,新建一个文档,方便自己复制粘贴。这样的解决方案相对来说还是比较粗糙。比如说有时候忘了自己设定的标题是什么,查找起来不是很方便,当设置新密码的时候,有时候也忘了及时的更新,而且我一些重要的密码很多都是一样的,因为复杂的密码有时候自己也很难输入。最重要的是,我在safari跟chrome上的密码没有互通!这些浏览器虽然做的还是很人性化的,会给你自动生成复杂密码,自动填充,但是查看密码却有点繁琐。我总是感觉没有安全感,比如以后换设备怎么办,有时候修改密码到底浏览器有没有记录好等等诸如此类的繁琐问题。于是我找到了Bitwarden,终于从密码管理这件事情上解脱了出来。简单介绍Bitwarden是一个开源的密码管理项目,他们官网提供的服务可以直接使用,也可以自己部署到vps、电脑上、docker等各个地方。全平台使用,mac、ios、安卓、win、linux等设置简单,自动生成复杂密码、自动填充、自动保存导入导出方便,可以定时导出json文件放在安全的地方做备份具体的功能还有很多,在下面尽量提到。部署Bitwarden这是张大妈上的一篇帖子,写的是非常详细,我基本上也是顺利的安装了,大家可以参考一下。基于Docker搭建bitwarden密码管理服务器AlphaTheta的文章我选择在docker下安装Bitwarden_rs,这是一个第三方的docker项目,相对来说就是比较简洁,没有太多硬件上的要求,但是功能又比较全面。首先登录小白必备的宝塔面板,安装docker管理器,接着点击右侧边栏的镜像管理接着我们输入bitwardenrs/server:latest上面张大妈的教程说是要输入Bitwarden_rs,但是我失败了,可能是有所变化?接着点击右侧栏的容器列表,并点击创建容器镜像选择我们刚才下载的镜像端口映射中前面的是容器端口,我们填写80,后面自定义服务器端口,只要不冲突就行。最后记得要点右边的加号,这样才会被添加目录映射就是把容器的目录映射到本地文件夹中,前面记得填/data,后面自定义就行点击提交之后,就已经部署好了,输入http://ip+端口就可以访问但是这样的话还不够安全,会暴露服务器的ip,而且访问也不够简洁方便。那怎样才能绑定域名呢?这个时候应该是不能够访问,因为会强制通过https访问,我们需要添加ssl证书。我们下文利用方向代理来同时解决这两个问题。反向代理在本小白来看,有点像域名跳转。也就是说我看上去是访问域名,但是实际上我访问的是docker里面的Bitwaden。利用Nginx反向代理绑定域名+开启https访问大致是接下来的几个步骤建立一个网站,做好域名解析设定好ssl证书,开启强制访问做好反向代理--域名指向本地的端口/也就是docker里面的Bitwarden先添加一个站点,自定义一个二级域名,php版本选择 静态网站,其他的无需设置,直接点击提交。https://cdntc.xhhdd.cc/2021/04/09/16176411503753.png)接下来去域名商那里做好二级域名的解析,指向自己的服务器接着点击自己的网站,在有侧边栏中选择ssl添加证书我选择的是Let's Encrypt的免费证书,按照操作一步一步来即可。最后记得打开右上角的强制HTTPS好的,我们还差最后一步添加反向代理在左侧边栏点击反向代理,并添加一个反向代理代理名称自定义目标URL中填入127.0.0.1:端口即可。其中127.0.0.1就是代表本地的意思,后面的端口就是刚才docker那设置的端口到此为止,我们就可以通过https://域名直接访问Bitwarden开始使用创建账号我们先点击界面右下角的创建账号这个主密码非常的重要,一旦忘记就不能恢复。当然用上Bitwarden之后,唯一需要记忆的也就是这个密码。添加密码项目https://cdntc.xhhdd.cc/2021/04/09/16177222642905.png)进入管理界面之后,我们能看到左上角有三个导航栏,最常用的也就是我的密码库,我们可以立即点击右上角的添加项目来进行密码的填写。在软件里一个项目就可以理解为一个网站的密码保存。最上面的登录就是字面意思,也是最常用的一个类型。还有身份、卡片、安全笔记可以选择。接下来就是名称,这里可以自定义,跟网站名字没有关系,适合自己方便好记就可以了。然后是右边的文件夹,我们可以把它分类到不同的文件夹。不支持同一个项目出现在多个文件夹,但是可以收藏某一个项目,让它出现在收藏夹。我想一般是常用的项目才会用得上。接下来就是用户名和密码,这个就是关键了,我们就是要把登录的账号密码填写上去。其中密码右上角有一个回旋箭头,点击即可生成随机密码,生成规则在其他页面设置。箭头旁边的勾,点击即可查询这个密码有没有安全隐患。再往下是验证器秘钥,这个好像主要是给那些二步验证还是什么一次性密码来使用的,还没有去尝试过。接着是到了URI,这个是填写网站的链接,我们刚才是保存了哪个网站的账户密码,就填写哪个网站的链接。这个填写跟后面的匹配检测有关联,我们在下文中详细讲解。那么到这里,我们这个密码项目就已经建立好了。使用的时候可以点击按钮快速的复制用户名或密码。当然,这样还不是很方便,因为密码自动填充已经非常普遍了,关于怎么设置密码自动填充请看下文。匹配检测详解先讲一下为什么要设置URL与匹配规则当我们设定好密码A的URL是a.com时,那么Bitwarden就会识别到,并且给出填写建议。如浏览器插件的效果亦或是手机浏览器的效果 以上,都是因为填写了URL所以自动给出填写建议的情况那么为什么要设置匹配检测呢?简单的来说,通过设定它,会使得填写建议更加的智能。比如说我添加了一个百度网盘的密码项目,URL=https://pan.baidu.com/在登录百度网盘的时候会自动建议或填写密码。但是我在登陆百度云或者是百度贴吧的时候也是同样的百度账号呀!但是网址肯定不是是刚才的https://pan.baidu.com/。但是通过匹配检测设定一级域名是baidu.com的话,都是填写百度账号。这样的话我就只需要一个密码项目就足够了,不需要手动把所有的URL都填写一遍。再比如说有些网站PC端的登录地址是a.com,但是手机登录端的是a.com/login,我们也可以通过匹配检测自动识别,不需要再重复添加密码项目。我用自己的二级域名绑定了好几个自建服务跟网站,如果不设置好匹配检测的话,那么会多出很多不合时宜的密码填写建议。接下来看看匹配检测的详细分析我们看上图可以发现,这个检测方法总共有7种,我们一种一种来看。默认匹配检测默认匹配检测其实不是一个具体的选项,我们可以指定下面6种检测方法作为这个默认值,具体在设置里面进行设定,没有设定的话就是利用基础域来进行检测。基础域基础域是什么意思呢?其实就是一级域名的意思。比如说我填写的链接是https://123.baidu.com,那么只要是一级域名是baidu.com的网站,Bitwarden都会自动监测到,并给出密码填写建议。所以二级域名的网址cn.baidu.com、带端口的网址baidu.com:5000、带了路径的网址baidu.com:5000/ch/asd/123都可以检测到。主机主机名可以简单理解为路径前面的信息。比如说https://123.baidu.com/123/345中123.baidu.com就是主机名,如果带了端口号的话,还要算上端口号。所以主机模式比基础域模式要更加精确一点。当我的URI是https://123.baidu.com时,其他的二级域名的网址cn.baidu.com、带端口的网址123.baidu.com:5000都是不能够检测到的。当我的URI是https://123.baidu.com:5000时,其他的二级域名(即使带了同样的端口)的网址cn.baidu.com:5000、带不同端口的网址123.baidu.com:6000也都是不能够检测到的。简单的来说,就是路径前的信息要一样(如果有路径的话)开始于这个模式比上面的主机模式还要更加精确,范围更加小。开始于也是字面意思,就是从你填的网址开始,后面接什么内容都可以。比如说还是填写https://123.baidu.com时,那么https://123.baidu.com/123/345是会检测到的,其他的二级域名的网址cn.baidu.com、带端口的网址123.baidu.com:5000都是不能够检测到的。那么问题来了,这两种模式好像没有什么差别?差别在于,我们填写https://123.baidu.com/123时如果是主机模式,那么https://123.baidu.com/987、https://123.baidu.com/ass/sdcsd/123都是可以顺利检测到的但是开始于模式就会检测不到,只能检测到https://123.baidu.com/123/987、https://123.baidu.com/123/987/123123/1wdvd等。简单的来说,开始于模式下网址如果不带路径的话,跟主机模式是一样的。带了路径的话,检测会比主机模式更加精确正则表达式这个我不会,就没有研究了精确这个就是字面意思,跟我们填写的URL完全对的上才会有所反应。从不这个也是字面意思,我们随便填写什么,都不会提供密码建议。我们最后理清一下思路。基础域是最大的范围,只要主域名对上了,都会检测到。主机模式下会对二级域名、端口敏感,但是对网址路径不敏感。开始于模式下则更加严格,除了主机名等,还会对网址路径敏感。最严格的就是精确模式,一定要完全一样才能检测到。所以给大家提供一下几点建议如果是百度、QQ这种服务比较多,或是一个账户通行的网站。我们直接选择基础域(默认)模式,这样登录QQ邮箱mail.qq.com的时候也会检测到,登录QQ音乐y.qq.com的时候也能检测到。(iPhone用户在app里也能检测到)如果是不同的二级域名提供不同的服务用不同账号登录的网址,(比如a.go.com用账号A登录,b.go.com用账号B登录)那建议选择主机模式,这样不会在同一个网址上出现很多无用的选项有的网址不同的路径就会代表不同的内容,(比如go.com/zh是中国区go.com/us是美区)那这个时候我们就可以选择开始于模式,避免无用的选项精确模式很少进行选择。举个例子,当在电脑上某网站的登录网址是go.com,于是我们记录下来。但是到了手机上却是go.com/login或者是m.go.com,那么检测就会失去效果。关于站点图标好了,那么通过以上的设定,我们就添加好了密码项目。但是我们发现一个现象,有的网站是没有站点图标的,有的是有站点图标的。(如图)那具体是什么原因呢?怎样才会出现站点图标呢?Bitwarden会自动根据我们填写的URL去获取网站根目录下的favicon.png文件并生成站点图标。如果URL没有填写http、https协议头,如a.com,那么不会自动获取如果站点根目录下没有图标文件,则获取不到图标如果URL填写的是外网地址,如谷歌、推特等,则获取不到图标。但是如果我们搭建在海外服务器的话,是可以顺利获取的。(直接使用官网的服务应该也是可以获取)站点图标可以在设置里选择是否打开内网地址/强迫症患者的解决办法如果你填写的是家里路由器的内网地址192.186.1.1之类的。那肯定是没有图标的,但是我们可以新增一个匹配检测为从不的URL放在第一行。]很显然,我的小米路由器填写的是内网地址,所以没有图标。但是我可以填写小米官网的地址,获取小米的logo。如下图,站点图标就会自然出现。海外网站我还没有想到方法去解决,我之前本来想着手动获取一下网站logo,直接放到软件的目录里。可是我也找不到放在那里。还想过自建一个什么CDN源,但是我又不会。要是知道的大佬可以下方留言指导一下哈!关于自动填写以上是密码项目的添加。使用的话需要自己手动复制粘贴。需要密码自动填写的话,还需要下载对应的浏览器插件或者app。Chrome浏览器插件插件的安装我就不再累述,如果网络条件不允许的话,可以去网上找一下crx文件离线安装。(本来想直接分享一下的...我发现我不会)上图中,右上角插件已经检测到了1个密码建议,但是它没有自动的填写到密码框中。我们这个时候有两种方法方法一:使用快捷键自动填充在Windows上: Ctrl + Shift + L在macOS上: Cmd + Shift + L在Linux上: Ctrl + Shift + LSafari浏览器:Cmd + 或Cmd + 8或Cmd + Shift + P方法二:在插件中进行设置设置-选项-启用页面加载时的自动填充ios上的app正好手里没有安卓设备,只能说一下ios上的app。关于开启自动填写非常简单,软件全程是有提示来告诉大家怎么操作。我们在浏览器进行密码填充的时候,点击输入框,底部自动会有一个提示。如果没有提示的话检查自己的URL、匹配检测正不正确两个框都点击试一下,有时候点击用户名没有反应,但是点击密码框就会检测到当然我们在使用的时候不仅仅只是浏览器的时候需要密码,更多的还是app使用的时候。以上是使用QQ的app登录时的密码建议,也是同样生效的。(截图截不出来,所以拍的照片。)有的朋友可能会说,有些密码我只在app上使用,那密码项目怎么建立呢?我又不知道URL。一般来说,大一点的app都是有官网的,先在网页端找到网址,然后填写即可。如果填写了仍然没有反应,不能自动填写,建议把匹配规则设置成基础域,这样范围最广。以上方法都不行的话,那就只能去Bitwarden里手动复制粘贴了快速添加密码项目与密码管理我们上文中手动输入用户名、密码、URL来添加密码项目。接下来演示一种实际情况下密码项目的快速添加与复杂密码的替换。快速添加密码项目我们的流程如下在安装好插件的电脑浏览器上,登录一个已有密码的网站。登录后就会提示是否保存密码,我们直接点击是,现在保存。那么到这里,密码已经添加完成了,如果是需要换成复杂密码。我们先去修改密码的界面。接着我们点击右上角浏览器插件,并点击箭头所指的第一个图标,接着点击右上角的编辑。点击下图箭头所指的地方,即可生成新的密码有这个提示也不要紧,因为软件会保留5条密码历史记录调整密码生成参数,点击复制密码,再点击右上角的选择-保存,接着复制到刚才的网页重设密码的区域,最后点击确定,网页就会自动刷新。以上,密码就已经添加完成,并且已经置换成复杂密码。如果浏览器之前有保存过密码,那我们可以直接导出来,并导入到Bitarden中。(safari不支持导出)导出密码库也在上图中,会有三种格式选择,一般选择json格式。我试过导入清空再导出,也是非常的方便,不会出现奇怪的问题。其他如果是自行托管的话,在登陆之前要在左上角的设置中填写自己的地址 添加密码之后,需要手动同步一下才能立马更新到其他设备上。web管理界面没有同步选项,只有其他的插件或是app上才有。MAC直接去app store下载客户端,桌面版本与safari插件是一起的,而且桌面版本不支持自动填充,插件只能快捷键输入,使用体验不佳。可以防止其他人通过你的自托管地址注册用户,可以自行上网搜索一下方法。身份与支付卡并未介绍,可以自行了解,也是一个自动填写表格的好功能更多问题请看官方文档,没有中文版本,可以利用浏览器的翻译功能。最后的最后部署安装其实非常的快,但是把sarari、chrome、以及本地保存的密码全都统一到软件上,确实花了不少时间。不过我自己觉得很值,不用分散管理,密码的安全性也提高了很多。算是一劳永逸吧~
2021年05月15日
911 阅读
0 评论
0 点赞
2021-05-06
域名邮箱-宝塔邮局管理器
之前在群晖上利用它自带的套件搭建了一个邮箱系统。其实这个系统应该功能还是比较丰富的,各种设置,还有什么反垃圾系统的自动学习啥的。不过因为是本地的ip,所以在邮箱得分中并不是很高,很容易就标识为垃圾邮件进入别人的垃圾箱。而且那段时间群晖出了点问题经常关机,总之使用上并不是太方便,特别是接重要邮件的时候总是担心会不会没收到。但是国内提供域名邮箱的服务商也只有几家啊,像阿里云的好像是要花钱还是怎样,于是我就选择了腾讯云的企业邮箱。腾讯云的怎么说呢,免费申请是个好事惹,但偏偏要跟企业成员那种系统绑定在一起。简单来说是这样的,你要先注册一个企业,然后绑定微信,你就成为了这个管理员。接着绑定域名,给不同的人新建账户,填入信息,绑定微信,生成域名邮箱。那么成员可以通过企业微信,或者是qq邮箱的app来进行使用。ummm...怎么说呢,其实使用的时候感觉也还行,可是这个绑定那个绑定有时候就是很烦。而且万一我要换个域名呢?只有6次机会。如果要新建一个前缀呢?似乎也不是很自由。宝塔邮局管理器这次宝塔面板上的邮局管理器真的是深得我意。安装非常的简单,支持多个域名,也没有用户上的限制。不过有一点还蛮重要的,就是需要服务器开25端口。我实际测试了一下阿里云的ECS,25端口就是关闭的,自己在安全组里面配置没有用,需要自己发工单去申请。同时我也测试了一下腾讯云的轻量云,这个是没有问题,可以自己手动开启。在应用商场安装好之后,就能看到一个非常简明的界面。https://cdntc.xhhdd.cc/2021/06/22/16242907020566.png)首先自然是左上角的添加域名,不过只支持一级域名。也就是说我们到时候的邮箱都是abc@abc.com的样式,而不能是abc@mail.abc.com这种。所以如果网站挂了CDN的就要注意了,要不就是换dns的服务商,像cf就支持根域名的cname跟mx同时存在。要不就是主站用www的二级域名,根域名做一个显性跳转也行。添加域名之后,就会进行一个自动的配置,然后需要添加MX记录跟其他的TXT记录。检测通过之后就可以在用户管理这里添加用户使用了。在app上添加邮箱账户之前,可以现在服务器端测试一下:我们可以在宝塔自带的发件箱这里测试一下,看看别人能不能收到邮件。如果不行的话,看看25端口有没有打开。如果被识别成垃圾邮件的话可以手动选择这不是垃圾邮件。我试着给自己的qq邮箱发,然后自动进了垃圾箱,我选择这不是垃圾邮件。然后再给自己跟其他的qq邮箱发,结果发现也不会进垃圾箱。我没有严谨的测试,不知道是不是有偶然性在里边。在宝塔这个自带的发件箱里测试的时候,如果只有一个用户账号那还好,但如果是多用户的话,即使你选择用户2来发送邮件,但可能还是用户1发送的软件。IMAP服务mac、ios上自带的邮件app,或者是qq邮箱都是支持IMAP服务的。我们在添加邮箱账号之前要记得在服务器商家的平台上开通以下端口。或者说看情况吧,像pop3用的是110端口,用IMAP的话就不用去开通。接着在app上添加,上面说的两个app都是选择其他账户。这个时候就会让你输入账号密码。【也就是刚才宝塔上建立的用户跟密码】。接着就会告诉你验证不通过,要填更多的信息。大概就是这样的界面,接着把信息补充完整就可以了。关于ssl这个我并不是很清楚,像qq邮箱的话,不管你的宝塔面板上有没有配置好ssl证书,只要你勾选了ssl其实就是可以通过的。当然具体是不是走的ssl我也不知道。我还特意ssh上服务器看了一下,宝塔是会自动生成一个通用的奇怪证书。然后如果是在mac上添加的话,就会提示你,这个证书不安全。可以添加,不过会有这样的提示。在这里添加证书之后,mac上的提示就会消失,希望是走了ssl加密吧...关于catchAll我们能看到宝塔面板有个catchAll的小功能,这其实就是一个邮件转发。简单的来说,它会把所有不存在的邮箱地址转发到某个邮箱。比如说我现在只有一个root@kv.mk的邮箱用户,开启了这个功能之后,那么1@kv.mk也好,dd@kv.mk也罢,你都是能收到邮件的。有一种突然拥有无限个邮箱的感觉一样~哈哈哈哈啊哈
2021年05月06日
1,818 阅读
0 评论
1 点赞
2021-04-28
网页秒开--旁路由openWRT上ADguard Home的使用体验
之前试过smart dns,感觉还是挺好的。这次的ADguard从界面上以及功能上,感觉是完全取代了之前的smart dns。接下来为大家简单分享一下。登录ADguard Home家里是装了一个OP的软路由,上面正好自带了ADguard,所以使用起来相对来说比较简单。这是AdGuard Home在软路由上的界面。首先拉到最下面,选择改变网页登录密码,然后点击添加。接着界面中间就会出现一个下图的新模块。在里面输入自己想要的密码之后,点击载入计算模块,再点击计算。如上图,出现了一串非常复杂的字符,接下来复制并粘贴到手动设置里面的password。把本来的字符替换即可。好的,以上就把密码重置好了,主要是我不知道初始密码是什么,试了admin、root、password之类的都不对...所以要这么折腾一下。接下来就是要启动web界面了,我们把界面的启用那个勾点上,然后点击保存并应用,接着访问软路由的IP+3000,即可进入AD的界面。好了,这就是我的界面了,按理来说初次设置的话,那些数值啥的应该都是显示为0的。配置ADguard Home我比较看重的是ADguard Home的DNS功能,所以先去搞DNS。点开上方导航栏中设置-DNS设置。首先是上游DNS服务器,这里的话需要填入一些DNS服务器的地址。等于以后DNS的解析就是从这些地址中获取。那么填什么地址比较好呢?这里我推荐IP.cn查询网上去查看。因为我自己听说运营商会DNS劫持啥的,所以填的都是公共DNS服务器的IP地址。下面顺便附上以供大家复制粘贴。8.8.4.4 208.67.222.222 199.91.73.222 114.114.114.114 114.114.115.115 223.6.6.6 218.30.118.6 178.79.131.110 208.67.220.220 9.9.9.9 140.207.198.6 52.80.66.66 210.2.4.8 8.8.8.8 123.125.81.6 101.226.4.6 117.50.11.11 119.29.29.29 223.5.5.5 119.29.29.29 180.76.76.76 1.2.4.8接下来就是三种模式了,分别是负载均衡、并行请求、最快的IP地址。第一种模式我不是太清楚,按字母意思来理解的话就是每次解析随机选择一台服务器,然后通过加权不断的筛选最快的服务器。第二种并行请求是请求所游上游服务器,我不知道跟第三种的区别在哪里,我看到网上有人说选择这种模式可能网页打开快,但是图片跟其他内容加载比较慢。第三种的话就是把上面填写的IP地址全部找一遍,接着选择最快的地址。所以如果上游服务器写的比较多的话,打开个网址起码要好几秒。问题就在于,找到这个最快的地址之后,会不会给他记住,下次缩短查询时间,然后随着不断地使用,缓存越来越多,直到正常使用。不过很快我又打消了这个念头,因为我不一定只是访问固定的网站,所以这个应该是不能成立。用这种模式的话估计是只能填写比较少的上游服务器。设置好模式之后,我们再设置一下Bootstrap DNS服务器。这里是填什么呢?因为我们刚才的上游服务器有可能会填入https://dns-unfiltered.adguard.com/dns-query这种非IP类型的DNS服务器,所以需要先通过Bootstrap DNS解析上游服务器的地址。最后的解析依旧是上游服务器来完成。所以这里填写运营商默认分配的DNS服务器的地址就好,具体可以在拨号上网的界面中找到。 接着点击一下测试上游DNS,进行测试。稍等片刻右下角就会进行提示,可能是成功的提示,也有可能是告诉你上游服务器哪些不能访问,需要自己去删除。测试完成之后点击应用即可保存。最后可以在DNS缓存配置这里设置一下缓存大小,我的话就保持默认,或者咱们可以设置的更大一点。 启动我们回到软路由的界面,然后找到5553重定向这一栏。选择重定向53端口到ADguard Home,这个意思就是软路由将会使用ADguard Home提供的DNS服务。 接下来去网络-DHCP把DNS重定向取消勾选即可。这样操作也可以,不过也可以直接在上一步AD的界面中选择用53端口代替dnsmasq。我是真不知道dnsmasq是个啥服务,也不知道在哪里,所以就没有勾选这个东西了。使用接下来我们可以验证一下,先在电脑上把网关改成软路由的网关。然后在命令行下输入nslookup查询一下某一个网站。首先我们的DNS服务器确实是变成了旁路由的地址。下面这个是采用了负载均衡的模式,查到了爱奇艺的两个地址。下图是并行模式,查到了比较多的地址。下面这张图只返回了一个IP地址,使用了最快的ip地址模式。这个看的我有点迷惑,其中第二个模式与第三个模式之间是有共同的结果的,也就是说最快的ip地址查到的结果也是在并行模式的结果里面的。但是负载均衡模式查到的ip地址却完全不一样。我对负载均衡查到的111.206.13.63进行测速,大概是40ms的延迟。而116.211.199.231这个声称是最快的确实延迟只有23ms左右。我想这可能是负载均衡的特性,因为它可能就是要多次查询才会越来越接近快的DNS服务器。关于三种模式的纠结我们回到AD的仪表盘,我们就会发现它新增了很多的查询记录,而且我们可以重点关注一下平均处理时间。我本来的平均处理时间是7ms,就是因为刚才开了最快的IP地址模式加之我上游服务器又比较多,所以打开了两个网页之后平均处理时间就变成了10ms,所以我觉得也蛮准的。大家如果也是在刚才的三种模式下比较纠结的话,不妨选定一种模式用个几天,看看平均处理时间有没有下降。关于广告过滤这个据说才是AD的主打功能,甚至去视频广告啥的。不过说实话,我自己对这个需求并不是很强烈,平时的网站中好像也没啥广告?反正就让它默认开着在哪里,确实能看到有些网站本来的广告变成了一个透明的框,应该还是在默默起着作用的。至于过滤规则的话我就更不想折腾了...
2021年04月28日
4,398 阅读
0 评论
0 点赞
2021-04-16
网络设置的一些小心得
之前在弄路由的时候,虽然是把爱快跟openWRT都已经安装好了,但最基本的设置都不会,DHCP、DNS啥的都弄不懂,纯粹是靠运气出的国。后来好不容易捋清楚了,所以来记录一下。网络环境网段是192.168.2.x爱快作为主路由的IP地址是192.168.2.3openWRT作为旁路由的IP地址是192.168.2.6爱快的设置设置账号密码,以及DDNS动态解析。我正好是阿里云的域名,所以就直接动态解析了。如果没有对应的服务商的话,其实在局域网内的任何一个其他设备上挂一个解析的服务就行。比如在docker上搞一个什么动态解析的容器,不一定是爱快本身去做,只要端口开好就行。 DNS设置是一个重点,因为爱快可以自由的做DHCP的设置,DHCP里面也可以自由的设置网关。那么不在dhcp分配段里的设备,但是网关填的爱快的话,就会使用这个DNS设置里的DNS服务器。我填的是运营商给的DNS服务器,应该是比较稳定的。DHCP设置一开始我忽略了,发现自己总是上不了网...现在我是设置了两项,一个就是25-100的段,指定的网关就是旁路由的2.6,DNS也是用旁路由上的ADGUARD搭建的服务。而101-202则是一切正常的网关,稳定的DNS服务器。主要是给我爸跟NAS进行使用。顺便一提,默认分配的话就是从小的分到大的,所以默认分配的就是旁路由的网关。差不多就是这些了,别的太复杂我也不是很懂。openWRT的设置openWRT的重点就是先要让它能连接上网络。如果连不上网络,那么低调上网啥的都不起效果,而且还不知道是哪里出了问题。网络设置-接口把网关设置成爱快的192.168.2.3。这一步就相当于引流?反正就是从主路由那里获取外网的数据。自定义的DNS服务器也可写填写192.168.2.3,或者填写114.114.114.114之类的常见DNS服务器。可以选择性的关掉DHCP跟IPv6的服务。网络-网络诊断里ping一下网址,如果有数据返回,那么就是连上网了。如果失败的话一定检查一下DNS服务器,或者重启OP,或者是防火墙设置做一定的更改。 以上的目的都是为了OP能正常上网,这时可以开低调上网服务,设备的网关指向OP就可以使用了。最后的最后关于主路由旁路由怎么操作,我看到有很多的说法,比如拿旁路由去做DHCP的服务。还有的是玩什么负载分流啥的。我就没想这么复杂,反正就是爱快当主路由,需要OP的服务的,就连到OP的网关上去,OP的网络来源等于就是来源于爱快这个主路由。
2021年04月16日
401 阅读
0 评论
0 点赞
1
...
5
6
7
8