有关根域名被CNAME拉平

RFC文档说根域名不支持CNAME映射到其他域名,否则和MX记录有冲突。即配置为CNAME zuotijia.me www.zuotijia.me,Cloudflare DNS CNAME拉平操作会把根域名zuotijia.me直接解析到IP地址,因此默认情况下,在浏览器输入zuotijia.me访问不到www.zuotijia.me。

要在浏览器输入根域名zuotijia.me访问到https://www.zuotijia.me,可以使用Nginx重定向。新建一个Nginx配置块/etc/nginx/conf.d/zuotijia.me.conf,输入以下内容:

server {
listen 80;
listen [::]:80;
server_name zuotijia.me;
return 301 https://www.zuotijia.me$request_uri;
}
server {
listen 443;
listen [::]:443;
server_name zuotijia.me;
return 301 https://www.zuotijia.me$request_uri;
}

重启Nginx使配置生效:
$ sudo systemctl restart nginx

然后以下网址都能重定向到https://www.zuotijia.me了:
https://zuotijia.me
http://zuotijia.me
即使在URL后面加了参数也能连带参数重定向。

Kernel Panic – not syncing VFS Unable to mount root fs on unknown-block(0,0)问题的解决方法

VirtualBox启动CentOS 7虚拟系统时,遇到Kernel Panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)问题,无法启动系统。

引起该问题的原因是缺少该内核的初始化文件。

解决方法是从启动界面的GRUB菜单中选择另一个内核来启动系统。进入系统后运行sudo update-initramfs -u -k version为version生成初始化文件(将version替换为内核版本字符串,例如4.15.0-36-generic),然后运行sudo update-grub更新GRUB。

参考

https://askubuntu.com/questions/41930/kernel-panic-not-syncing-vfs-unable-to-mount-root-fs-on-unknown-block0-0

普瑞马法则

关于时间管理,大家都听说过,先做紧急的事情,再做重要的事情,不紧急也不重要的事情可做可不做。紧急的事情大多是突发情况,不得不做。重要的事情往往有很多件,有些很难,我们不愿意甚至抵触去做;有些很简单,让人感到轻松愉快。人们普遍选择先做简单的事情,再做困难事情,结果越做越没有动力,产生了挫败感,甚至被惰性缠绕,只想躺平不动。

以心理学操作性反射的原则为基础,对于人类的行为方式进行观察后,心理学家提出一种改进方式,以纠正惰性生活方式,并由这种惰性生活方式的结束而带来整个人生的良性改变。这种改进方式叫做普瑞马法则。具体做法如下:
 
1 行为记录
先可以用一天到两天时间给自己做一个行为记录,把你通常每天要做的事情记下来,包括记录你所有的生活活动。这样,即使粗粗地记,大约也会有几十件。
 
2 按兴趣排列
然后把其中一些吃饭穿衣等必须完成的事情剔除。此后,你把剩余下来的几十件事情按照你的兴趣排列,把你最不喜欢做的事情放在第一位,把你最喜欢做的事情放在最后一位。
 
3 开始行动
每天一早起来,从你最不喜欢的事情开始做起,并且坚持做完第一件事情,再做第二件事情……一直做到最后一件你喜欢的事情。
 
4 坚持进行下去
在整个过程中,你开始会稍觉得困难,但你只要花很少的力气稍稍坚持,你就能顺利进行下去。千万不要在中途跳过那些你不喜欢做的事情。
 
5 强化作用、正反馈
这种方式是一种强化作用的方式———先处理困难的事情,再处理稍困难的事情,是一种对于前面行动的强化,然后继续,强化的效果会越来越大,一直大到你觉得你有力量来完成任何事情!
 
当你做到最后最喜欢做的事情时,你会觉得很放松很愉悦,这个时候你也没有烦人的事需要继续面对了,于是你的心情必然是很好的,你在这一天的结束将拥有一个很好的睡眠,第二天早起后一定会精力充沛。
 
你遵循这个法则,并且多一些坚持,你将发现,生活和工作将变得多么轻松有趣啊!

沃斯定律(Wirth’s Law):软件比硬件更容易变慢

因为软件可不遵循摩尔定律!这也是说明了,当把钱花在硬件上不再能获得线性收益时,就应该招几个大牛程序员(专家)了,把钱花在大牛程序员上,企求带来超线性的收益。

另请参见安达尔定律(Amdahl’s Law)和古斯塔夫森定律(Gustafson’s Law)。

数据流套接字和数据报套接字在传输数据方面的特点

在传输数据方面,数据流套接字(SOCK_STREAM)传输的是可靠、有序、无数据边界的字节流,数据报套接字(SOCK_DGRAM)传输的是不可靠、不一定有序、有数据边界的数据块。

TCP协议是实现数据流套接字的最常见、最通用的协议,UDP协议是实现数据报套接字的最常见、最通用的协议。

VS Code连接远程服务器时弹出an ssh installation couldn’t be found对话框的解决方法

我的操作系统是Windows 10。

在VS Code中安装Remote-SSH扩展进行远程开发,首次连接远程服务器时出现an ssh installation couldn’t be found对话框,该错误表明VS Code Remote-SSH扩展在Windows系统中找不到ssh.exe。

VS Code默认将在PATH环境变量中查找ssh命令,如果找不到,就会出现上述错误。

可以先在Windows系统中安装Git软件包,它会同时安装ssh.exe,然后在VS Code Remote-SSH扩展的设置里,将remote.SSH.path配置项的值设置为ssh.exe在Windows系统里的绝对路径,明确告诉VS Code SSH客户端的位置,具体步骤为:

在VS Code中按下F1键 -> 输入Remote-SSH:Settings后回车,打开Remote-SSH的配置文件 -> 找到remote.SSH.path配置项,填入ssh.exe在Windows系统中的绝对路径,例如:C:\Programs\Git\usr\bin\ssh.exe

除了使用Git软件包包含的ssh.exe外,也可以安装OpenSSH软件包,使用它包含的ssh.exe。

关系型数据库的列和行的所有别名

列的别名:字段、分量、属性

行的别名:记录、元组、向量

从二维表的角度,二维表由列和行组成。

从关系代数的角度,一张二维表对应一个关系,一行对应一个元组(向量),列对应分量。

从ORM的角度,一张二维表对应一个类,二维表的列对应类的属性,二维表的一行数据对应类的一个实例。

从信息世界的角度,一张二维表对应一个实体型(实体类型),列对应实体的属性,一行对应一个实体。

从机器世界的角度,一张二维表对应一个文件,一行数据对应一条记录,列对应字段。关系型数据库管理系统(RDMS)多使用机器世界的术语。

CSS样式单的基本使用

CSS(Cascading Style Sheet,级联样式单,也称为层叠样式单),主要用于控制页面外观,包括HTML元素的精确定位,网页的布局,字体的大小和颜色等。

在写作中,应该避免书写“CSS样式”、“CSS样式单”、“CSS样式文件”等短语,因为CSS本就包含“样式单”这个语义。

HTML5规范推荐用HTML标签控制文档结构,用CSS控制页面外观。

HTML5删除了传统的<font>、<big>、<strike>等专门控制页面外观的标签,推荐完全用CSS控制页面外观。


在HTML文档中使用CSS,有以下4种方式:
1.链接外部样式文件。这种方式将CSS彻底与HTML文档分离,一份CSS可以控制多份HTML文档。CSS使用<link>元素链接到HTML文档。

2.导入外部样式文件。这种方式与“链接外部样式文件”类似,只是使用@import来导入外部样式文件

3.使用内部样式定义。这种方式是在HTML文档头部(<head>元素内)使用<style>元素定义CSS,只控制当前HTML文档的样式。

4.使用行内样式。这种方式通过HTML元素的style属性,将CSS定义到具体的某个HTML元素,用于精确控制单个HTML元素的样式。

21天法则

21天法则,是通过21天的正确重复练习,养成一个好习惯的一种方法。

据研究,大脑构筑一条新的神经通道需要21天时间。所以,人的行为暗示,经21天以上的重复,会形成习惯,而90天以上的重复,会形成稳定的习惯。

习惯的形成大致分三个阶段。

第一阶段:1一7天,这个阶段你必须不时提醒自己注意改变,并刻意要求自己。因为一不留意,你的坏情绪、坏毛病就会浮出水面,让你又回到从前。你在提醒自己、要求自己的同时,也许会感到很不自然、很不舒服,然而,这种“不自然、不舒服”是正常的。

第二阶段:7—21天,经过一周的刻意要求,你已经觉得比较自然、比较舒服了,但你不可大意,一不留神,你的坏情绪、坏毛病还会再来破坏你,让你回到从前。所以,你还要刻意提醒自己,要求自己。

第三阶段:21一90天,这一阶段是习惯的稳定期,它会使新习惯成为你生命的一部分。在这个阶段,你已经不必刻意要求自己,它已经像你抬手看表一样的自然了。

切记,潜意识只有在习惯成自然之后,才能任你随意驱使,你可能还没有了解持续的力量,你要有耐心,务必坚韧不拔。

但是,很多的坏习惯,由于你以前不止90或100次的暗示甚至更多的是亲自实践,已经根深蒂固了。所以,你需要花费更大的力气来改变,但方法很简单,就是你不要去做它。

大量实验与实践证明,只要不断重复,习惯、理念是可以改变的。当然,改变理念、改变习惯会是一个极不舒服、极不情愿的事。但不管怎么说,人的行为是按理念、习惯行事的,不良的理念、习惯不改变,就可能产生不良的行为,其后果当然是不好的。因此,在改变理念、习惯时,不能因不情愿不舒服就放弃,必要时还要给予外在压力,特别是刚开始时更需如此。俗话说得好:“万事开头难”,如果连开头都做不到,后续改变就不可能。因此,要记住改变任何一个理念、习惯时都要不断重复,直至21天,甚至21天以上。相信,没有改变不了的理念和习惯。否则,就意味着失败的来临。 在改变自己的理念、习惯时,一定要遵循 21 天法则的规律,不能盲干。因此,下列三点尚需引起重视。一是要按照三阶段的形成特点进行理念、习惯的改变工作;二是要有耐心,新理念、新习惯的形成需要21天,甚至更多天;三是在这21天里需要不断地重复练习。

心理学家Ericsson的研究发现:决定伟大水平和一般水平的关键因素,既不是天赋,也不是经验,而是“刻意练习”的程度。刻意练习是指为了提高绩效而被刻意设计出来的练习,它要求一个人离开自己的熟练和舒适区域,不断地依据方法去练习或提高。比如足球爱好者只不过是享受踢球的过程,普通的足球运动员只不过是例行惯事地训练和参加比赛,而顶尖的足球运动员却不断地发现现有能力的不足,并且不断以自己不舒服的方式挑战并练习高难度的动作。

成功贵在坚持。如果你对自己的坏习惯“呵护有加”不愿去改变的话,那么,请你问自己,你是想要失败还是想要成功?你是想要消极无聊的苦熬岁月,还是要精力充沛、生龙活虎的充实生活?

如果你要成功、你要美好快乐的生活,那么,你别无选择,只有一条路:立即去做!到底有多难呢?就像你要上高耸入云的山间台阶,只要你盯住前面的一个台阶,站上去。

这样一个一个坚持你会发现,很快你就有“一览众山小”之感了。一次的练习,就等于是上了一个台阶,然后盯住下一个不要停,继续去做,才能到达山顶。