分类目录归档:佳佳酱教程

解决Macbook休眠异常 待机掉电过快

请先确认apple官方给出的方法都没有用之后再尝试此文方法!

曾经我的mbp拔掉电源合上盖子以后一天过去几乎都不怎么掉电,基本上会少个百分之一到三。但是最近一年不知道怎么回事,待机一天过去电量会掉一半多(并不是因为电池老化)。我也不清楚是从什么时候开始这样的了,也许是某次系统升级后吧,毕竟我也没有特别去动过电源设置。

原本我也一直想找到导致这个问题最根本的原因,不过试了很多次都没找到。最近买了mbp的sea也有同样的问题,于是想着干脆把这个问题强行解决掉算了。

继续阅读解决Macbook休眠异常 待机掉电过快

Rust 基本数据类型

之前就有点感兴趣,现在又仔细看了以下,并做个笔记。(并不是表示我要学会,只是稍作了解。这种编译型静态类型语言我还是更倾向用c++)

下面变量全都加了下划线前缀是因为变量定义了不使用的话编译器会给出警告,除非加了_前缀。

 

npm多用户

npm的用户登录信息写在用户目录的 .npmrc 文件里,所以同一时间只能登录一个账号,要切换账号的话就要重新用 npm login 登录,比较麻烦。

于是写了个切换.npmrc文件来直接切换用户的shell脚本

分别login到对应的用户,然后查看用户目录里的.npmrc文件内容,复制出来,填到下面对应的地方

保存成比如 npmuser 文件放在某个PATH目录里,然后用 npmuser user1 这样的命令就可以直接切换用户而不用再登录了。

让Windows在高DPI显示屏上正确显示

我在macbook上虚拟机里装了个Win10,装好了之后发现,一切都是那么的小,小的几乎看不清。因为这个macbook是Retina屏的,所以dpi比较高,于是东西都变小了。

我的标题里不直接写win10是因为我也不知道自定义项目大小是从哪个系统开始有的,没有这个功能的系统很简单,就是把分辨率按比例调低即可。

继续阅读让Windows在高DPI显示屏上正确显示

Error: Cannot find module ‘npmlog’

手动安装node的时候一不注意就会出现这个错误,装好了之后使用命令 npm 测试一下出来了这个错误: Error: Cannot find module 'npmlog' 。

 

这一般是放在/bin里的链接不对导致的。

可能情况1

链接指向的不是 node_modules/npm/bin/npm-cli.js ,初次手动安装难免会搞不清要链接哪个文件,把链接指向正确的位置即可。

情况2

使用的不是软链接,由于npm-cli.js中使用的是相对路径,要是你一不小心链了个硬链接,那么npm就会从/bin解析相对路径,所以就找不到npmlog模块了。要使用软链接,在ln命令后加上 -s 选项: ln -s node_modules/npm/bin/npm-cli.js /bin/npm

 

解决node无法调用全局模块的问题

刚刚我把SPDY装到全局, npm -g install spdy ,

可以看到这个模块被装到/usr/local/lib/node_modules里了

 

 

 

然后开个环境测试一下,结果

吓得我满脑子都是doge!!!这是为什么?

继续阅读解决node无法调用全局模块的问题

【node】用ws模块创建加密的ws服务(wss)

node的ws模块可以很方便地创建一个单纯的标准websocket服务,但是对于创建wss服务并没有提供一个独立的方法,还是使用创建ws服务的方法,在传入参数对象里加了个自定义的https服务。

 

也不知道是我找错了文档还是官方文档就那么简洁,不过readme文件写的文档的确是这个→doc/ws.md,然后我研究了好几天还翻了遍它的源码和examples才终于理解了这个文档。

继续阅读【node】用ws模块创建加密的ws服务(wss)

[Javascript]使用Generator函数创建你自己的异步函数

欢迎来到佳佳doubi小课堂~在这里你可以学到实用又错误的知识×。

好久没写正经的博文了,让我来正经一下。

使用Generator函数来创建你的异步函数,先说明一下原理。

Generator函数是ES6里的新函数类型,函数定义写作这样

看到没,在函数名和function之间多了一个*号,这不是我写错了,是Generator函数的标志,这个*号其实也可以贴着函数名写 function *a(){},也可以不加空格 function*a(){},不过还是推荐把它贴着function写,这样既不会影响一些编辑器里的高亮,也不会降低代码可读性。 继续阅读[Javascript]使用Generator函数创建你自己的异步函数

设置Linux端口封闭

设置端口封闭是为了尽可能保证服务器安全,以免不必要的麻烦。另外,设置mysql端口对外封闭可以大大减小被爆破的风险。

对于一个普通的网站服务器来说,只要留下几个端口即可,如果还有其它的服务需求,也可以再多留几个。

设置端口封闭需要用到iptables,用它实际上可以设置很多通讯相关的东西这里仅写一下开放部分端口的方法(因为我刚刚这么做了。。

此时也就已经实现了我本来需要的目的:阻止外部连接到我的数据库。

由于iptables的设置是即时生效的,所以千万不要一开始在终端就输入上面的最后一句,一旦输入了。。。你就连不上了(所以我才把它放在最后一行)
然后把它们放进一个shell文件里运行它,或者直接加进开机启动项。

要是你要问我为啥不用iptables自带的保存呢,我只能说:好麻烦。。。。

windows下创建.htaccess文件

一定有不少人尝试过在win下建立一个.htaccess文件,一般都是先右键新建一个文本文档,然后把它的名字改成.htaccess,然后windows会告诉你一定要输入文件名。(虽然不知道windows为什么要这样做不过看起来好像很高级的样子呢!

那怎么办呢?去找一个现成的.htaccess文件复制过来吗?

当然不是咯,实际上windows也可以命名点点开头的文件,比如你用cmd重命名文件就不会有这样的提示。

不过先创建一个文件再重命名还是有点繁琐,不如直接创建一个.htaccess文件。虽然cmd里没有创建空文件的命令,不过利用输出重定向,很多没有输出内容的命令也是可以用来创建空文件的。

首先在要创建的目录按住shift并右键,点“在此处打开命令窗口”,跳出来一个cmd窗口,然后输入

一个.htaccess文件就出来了, cls 是清空控制台内容的命令,此命令没有输出,所以重定向到.htaccess文件就创建了一个空文件。

更新:有些情况下cls创建的不是空文件,请尝试以下方法。

同理,其他无输出命令也可以创建各种在图形模式下无法创建的文件。比如

以及类似命令。

 

请尝试你的系统是否支持touch命令

如果你的系统支持touch命令,那么一切烦恼就都没有了。直接在控制台输入 touch .htaccess 即可创建一个空的文件