Write the Code. Change the World.

9月 08

https://carbon.now.sh/

下拉条调

::-webkit-scrollbar {
    height: 16px;
    overflow: visible;
    width: 16px;
}

::-webkit-scrollbar-button {
    height: 0px;
    width: 0px;
}

::-webkit-scrollbar-corner {
    background: transparent;
}

.docs-gm ::-webkit-scrollbar-thumb {
    border-style: solid;
    border-color: transparent;
    border-width: 4px;
    background-color: rgb(218, 220, 224);
    border-radius: 8px;
    box-shadow: none;
}

::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.2);
    background-clip: padding-box;
    border-style: solid;
    border-color: transparent;
    border-image: initial;
    border-width: 1px 1px 1px 6px;
    min-height: 28px;
    padding: 100px 0px 0px;
    box-shadow: rgba(0, 0, 0, 0.1) 1px 1px 0px inset, rgba(0, 0, 0, 0.07) 0px -1px 0px inset;
}

.docs-gm ::-webkit-scrollbar-track {
    box-shadow: none;
    margin: 0px 4px;
}

::-webkit-scrollbar-track {
    background-clip: padding-box;
    border-style: solid;
    border-color: transparent;
    border-image: initial;
    border-width: 0px 0px 0px 4px;
}

阅读全文 >>

9月 08

因为有阿里云,ssl 证书,都是通过 阿里云盾证书服务 来申请的。免费,方便。但也有缺点。这个证书只能使用一年,且不支持泛域名,一个服务器最多支持 20 个证书。这样,如果域名多,也烦。 后来发现了 Let's Encrypt, 发现了 acme.sh 。想来试试这个。

了解了解

Let’s Encrypt 作为一个公共且免费 SSL 的项目逐渐被广大用户传播和使用,是由 Mozilla、Cisco、Akamai、IdenTrust、EFF 等组织人员发起,主要的目的也是为了推进网站从 HTTP 向 HTTPS 过度的进程,目前已经有越来越多的商家加入和赞助支持。
Let’s Encrypt 免费 SSL 证书的出现,也会对传统提供付费 SSL 证书服务的商家有不小的打击。到目前为止,Let’s Encrypt 获得 IdenTrust 交叉签名,这就是说可以应用且支持包括 FireFox、Chrome 在内的主流浏览器的兼容和支持,虽然目前是公测阶段,但是也有不少的用户在自有网站项目中正式使用起来。
Let’s Encrypt 的最大贡献是它的 ACME 协议,第一份全自动服务器身份验证协议,以及配套的基础设施和客户端。这是为了解决一直以来 HTTPS TLS X.509 PKI 信任模型,即证书权威(Certificate Authority, CA)模型缺陷的一个起步。
在客户端-服务器数据传输中,公私钥加密使得公钥可以明文传输而依然保密数据,但公钥本身是否属于服务器,或公钥与服务器是否同属一个身份,是无法简单验证的。证书权威模型通过引入事先信任的第三方,由第三方去验证这一点,并通过在服务器公钥上签名的方式来认证服务器。第三方的公钥则在事先就约定并离线准备好,以备访问时验证签名之用。这个第三方就称为证书权威,简称 CA。相应的,CA 验证过的公钥被称为证书。
问题是,如果服务器私钥泄露,CA 无法离线使对应的证书无效化,只能另外发布无效记录供客户端查询。也就是说,在私钥泄露到 CA 发布无效记录的窗口内,中间人可以肆意监控服-客之间的传输。如果中间人设法屏蔽了客户端对无效记录的访问,那么直到证书过期,中间人都可以进行监控。而由于当前 CA 验证和签发证书大多手动,证书有效期往往在一年到三年。
Let’s Encrypt 签发的证书有效期只有90天,甚至希望缩短到60天。有效期越短,泄密后可供监控的窗口就越短。为了支撑这么短的有效期,就必须自动化验证和签发。因为自动化了,长远而言,维护反而比手动申请再安装要简单。
证书的有效期,我坚持认为这是合理的。Let’s Encrypt 的证书是自动签发的,对 Let’s Encrypt 的目标用户(个人网站、小网站)来说,90天已经是一个很长的时间了。特别是个人网站,域名所有权的变动是非常快的。可能前几天域名还属于张三,后几天就属于李四了。因此自动签发一个长有效期的证书是很容易产生问题的。如果证书的有效期是两年,那么经常交易域名的人就可以长时间持有已经不属于他们的域名的证书。并且这种持有不受证书吊销列表的控制,因为签发的时候,所有权是没有问题的,即使后来所有权变更了,Let’s Encrypt 也不会知道。所以设的有效期短一点,可以减少这个问题的影响。然后是易用性,现在已经有不少的 Let’s Encrypt 自动续期脚本了,配好后就不用管了,非常方便。
总之,强烈推荐站长和服务器平台用 Let’s Encrypt 向访客提供加密连接。这是域名认证未来的发展方向。

参考,了解更多

https://www.bluesdream.com/blog/tag/acme-sh

https://www.zhoutao.org/blog/2018/05/773.html

https://www.cnblogs.com/clsn/p/10040334.html

阅读全文 >>

8月 29

操作吧

create database shenqi_db default character set utf8mb4 collate utf8_general_ci;

create database 数据库名 default character set utf8mb4 collate utf8mb4_unicode_ci;

### 添加用户
// 用户名@连接ip  localhost为本地  %为任意ip
create user '用户名'@'localhost' identified by '密码'
create user '用户名'@'%' identified by '密码'
create user '用户名'@'111.111.111.111' identified by '密码'

### 授权
grant all on 数据库名.* to '用户名'@'localhost';
//localhost根据需求进行更改

阅读全文 >>

8月 24

生成文档好帮手,Hugo

Hugo 是由 Go 语言实现的静态网站生成器。简单、易用、高效、易扩展、快速部署。

https://www.gohugo.org/

linux ,unix(mac)比较好装,这里尝试在 win10 上安装 hugo。

操作一波

折腾再折腾。

  1. 先安装 Chocolatey。
    我们借助的是 Chocolatey 这款软件包管理器。它事实上是为了习惯于 Linux 的程序员们准备的,因为在 Linux 中安装程序,通常都只需要一条安装命令就可以完成。
    Chocolatey 自身的安装很方便,一共有三步:

- 开始菜单中搜索 cmd,选择「命令提示符」
- 右键菜单或在右边菜单选择「以管理员身份运行」
- 复制下面这段内容,回车执行

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
  1. 再安装 hugo
choco install hugo -confirm

Chocolatey 安装太慢怎么办,可以用 为屁嗯

生站点

安装好了 hugo 后,就可以开始生站点了。试试看。

cd test

# 这个时候就生成基本文件和目录,仅仅 config.toml(也可以改成config.yaml)有四行内容,其他文件夹是空的
hugo new site hugo.cn

cd hugo.cn

# 开始生了(虽然没有实际的文件),访问 http://localhost:1313,会是一个空白页面
hugo server

安装主题试试

cd themes

git clone https://github.com/spf13/hyde

接下来,我们需要对Site进行一些配置 tonybai.com/config.toml是Site的顶层配置文件,配置后的config.toml文件如下:

baseurl = "http://hugo.cn/"
languageCode = "en-us"
title = "just test hugo"
theme = "hyde"

[params]
    description = "测试博客"
    themeColor = "theme-base-08" # for hyde theme

其中,theme = “hyde” 指定站点使用Hyde主题;themeColor = “theme-base-08″ 指定了站点的主题颜色(默认是黑色的,这里改成一种红色)

再执行 hugo server 看看。页面是不是不再空着了。

hugo server -w 

# 加上 w 参数,可以动态执行生,也就是 content 里边改变或新加减少文件都能被感应到,并生成 html 文件。但 config.toml 改变是感应不到的,必须得手动再执行一次。

# 直接执行 hugo 则直接打包,生成 public 目录文件。自己去部署就可以了。
hugo

相关文章

https://gohugo.io/getting-started/installing/

https://www.gohugo.org/post/coderzh-hugo/

https://www.gohugo.org/theme/

https://sspai.com/post/55309

https://tonybai.com/2015/09/23/intro-of-gohugo/

后话

Chocolatey 和 Scoop 。

阅读全文 >>

8月 18

本插件支持Chrome、Firefox、MS-Edge浏览器,内部工具集持续增加,目前包括 JSON自动/手动格式化、JSON内容比对、代码美化与压缩、信息编解码转换、二维码生成与解码、图片Base64编解码转换、Markdown、 网页油猴、网页取色器、脑图(Xmind)等贴心工具,甚至在目前新版本的FeHelper中,还集成了FH开发者工具, 如果你也想自己搞一个工具集成到FeHelper中,那这一定能满足到你。另外,本站也提供部分工具的在线版本,欢迎使用,欢迎反馈!

https://www.baidufe.com/fehelper/index/index.html

mi-wu-tong

https://github.com/geph-official-2020/geph2020

阅读全文 >>

8月 13

vue 项目中,有这样一种场景,在相同路由间跳转,根据参数不同来做不同的处理。但是,不会触发常规的刷新。可以这么做。

操作一波

export default {
    data() {
        return {
            id: '',
        }
    },
    watch: {
        '$route': ['routeChange']
    },
    mounted() {
        this.routeChange();
    },
    methods: {
        routeChange() {
            this.id = this.$route.query.id;

            console.log('change id = ', this.id);
        }
    }

这样,就可以达到目的了。

阅读全文 >>

8月 13

近来一首很火的网络歌曲其中有一句“我心匪石不可转,我心匪席不可卷”,听上去云里雾里不知其意。原来是出自先秦《国风·邶风·柏舟》,原文是:“我心匪石,不可转也。我心匪席,不可卷也。”大意便是我的心并非卵石可以随意滚转,我的心并非草席可以随意滚卷。

好生幽怨的一句话啊,在感情中谁是主动的一方,或许就会遭受这样的境遇。陈奕迅的歌词中有一句“得不到的永远在骚动,被偏爱的都有恃无恐。”大概在爱情中总是如此,这大概就是为什么女孩子从小就会被灌输尽量不要主动的原因吧。

但是喜欢一个人是挡不住的。我有一个同学,在大学的时候对班里的一个女生简直就是一见钟情,喜欢的不得了。就觉得此生非她不娶了,每天会早早的起床收拾好,就等在这位女同学上课的必经之路上,假装偶遇。因为他起得早,几乎每天都会偶遇,这样的偶遇不是傻子都能看出来就是故意的。

女同学估计早就看出来了,但就是不冷不热,欲拒还迎的姿态,时而高冷时而平易近人,把我这哥们拿捏的那叫一个稳当。所谓日久生情,还是有一定的道理的,时间久了后两个人虽然没有宣布恋爱关系,但是在我们看来就是情侣的模式了。吃饭,上课几乎形影不离。

有一次哥几个就好奇,问你跟那谁谁处上了?哥们说还没有,但是应该是十拿九稳。当时我们就不乐意了,直接怂恿他去表白,不然就是没胆量。这么一激,他果然去了,我们都在好奇地等他回来,见他哼着小曲回来。我们就问怎么样了,“她说了,现在还不是谈恋爱的时候,不是不喜欢你,就是希望等我们相处再久一点再说这个事。”

我们在那起哄,那不就是拒绝了吗。结果哥们不乐意了,说我们不懂他俩的感情。确实不懂,话都到这个份上了,这不明显就是拿他当备胎吗。你尽管心甘情愿地伺候我,但我就是把你吊着,要是遇到比你更好的就把你踢开。但是我这哥们当时哪里会去想这些,还傻呵呵地窃喜呢。

果不其然,半年后。有一天,我们打完球远远地就看到,那一对拉着手的情侣,其中的女生不就是我们班那谁吗。我们立时反应了一下,我那哥们这是被人劫菜了啊。立马打电话告诉了这个情况让他来,他看到后很伤心地就转身走了。当晚,他找我们几个去喝酒,喝得烂醉如泥,把这半年多的辛酸史都吐了一遍。

说他都为这个女生做了什么什么,帮她熬夜做什么,帮她顶着太阳干嘛干嘛。说了一晚上,后来终于反应过来了,说她不喜欢我吊着我干嘛啊。当时那个年纪,我觉得他做的好像也没有错,喜欢就应该是全身心地去喜欢。尽管结果不是如人所愿,起码走过了那段美好的岁月。

倘若是换做现在,恐怕再难有几个人心甘情愿地一味付出。人心都是都长得,没有人不需要得到回应,人心不是石头,也不是草席,都不愿意被召之即来挥之即去。爱一个人用心去爱,也要爱自己的自尊,要懂得值不值得,倘若值得倾心相与。倘若不值,懂得转身。

末了,可以来听一首 《春庭雪》

https://v.qq.com/x/page/b3126ssll14.html

文章来源

https://baijiahao.baidu.com/s?id=1669020829248613277&wfr=spider&for=pc

阅读全文 >>

8月 13

laravel 7 开始, 以新的日期序列化格式日期。如 2020-03-04T20:01:00.283041Z 这对我们很不友好。得想办法处理。

laravel 7 升级指南

按照官方的意思,在 model 中,增加下边的函数:

protected function serializeDate(DateTimeInterface $date)
{
    return $date->format($this->dateFormat ?: 'Y-m-d H:i:s');
}

一种方式是,写一个父类,父类中写入该方法。但是,继承并不是一个很好的实现方式。这里,我们使用 trait 来解决。

阅读全文 >>

8月 12

引入 VueRouter,访问多次访问同一个路由,就会报: Error: Avoided redundant navigation to current location: 的错。虽然不影响功能,可不好看呀。

处理

在引入 VueRouter 的地方,处理:

// 解决点击重复路由报错问题
const originalPush = VueRouter.prototype.push
   VueRouter.prototype.push = function push(location) {
   return originalPush.call(this, location).catch(err => err)
}

Vue.use(VueRouter);
…

阅读全文 >>

8月 12

为什么要开通腾讯商户开通企业付款到零钱呢。开通了这个,用户就可以通过接口的方式来进行提现了。这样就可以达到你的产品收入,支出的自动化。

开通条件

  • 你要知道有这个功能,想到有这个功能。
  • 诡异的是在腾讯商户的后台页面,根本没这个按钮,这个是最让人伤心和郁闷的地方。

那么,官方给出的开通条件呢。

  1. 入驻满90天
  2. 连续正常交易30天 (这个要很小心,不能断)
  3. 保持正常健康交易

没开通点击的按钮,可以点击链接进去:
https://pay.weixin.qq.com/index.php/public/product/detail?pid=5&productType=0

然后点击申请开通,不满足肯定开通不了的。继续去累条件吧。

阅读全文 >>