随着时代的进步,科技的发展。
我们进入了所谓信息大爆炸、信息过载的时代。因此,在浩如繁星的书籍中找到好书就变得非常困难。
矛和盾虽然对立,同时也是一起发展和进步的,科技发展也带来了更便捷的沟通和交流方式,也有了效率更高的信息检索方式。
我们比古人幸运多了,只要明白自己的需求和目标,就很容易找到适合自己的书籍。

那么,如何能够拥有一本书呢?
no Pain no Gain no Gavin
随着时代的进步,科技的发展。
我们进入了所谓信息大爆炸、信息过载的时代。因此,在浩如繁星的书籍中找到好书就变得非常困难。
矛和盾虽然对立,同时也是一起发展和进步的,科技发展也带来了更便捷的沟通和交流方式,也有了效率更高的信息检索方式。
我们比古人幸运多了,只要明白自己的需求和目标,就很容易找到适合自己的书籍。

那么,如何能够拥有一本书呢?
Mac使用SourceTree项目的GIT密码始终保存不到Mac的钥匙串中,明明在钥匙串中是存在的.但是在使用sourceTree pull/push代码的时候还是需要再输入密码,很是繁琐.

于是,网上搜索了一下,说的在https模式下,Mac需要使用osxkeychain凭据助手,并在Git中设置使用. 并且如果已经安装了brew的应该会自带了osxkeychain.但是奇怪的是,我安装了brew的,使用brew安装应用也没有问题.那就只能手动的再设置一次了.
git-credential-osxkeychaincurl http://github-media-downloads.s3.amazonaws.com/osx/git-credential-osxkeychain -o git-credential-osxkeychaingit-credential-osxkeychain 放入 bin目录mv git-credential-osxkeychain /usr/local/bingit-credential-osxkeychain赋权限chmod u+x /usr/local/bin/git-credential-osxkeychaingit config --global credential.helper osxkeychain经过上面的设置,下次访问https的项目时只需要输入一次密码,就会存储到osx的钥匙串中了,以后再也不会在Git中询问了.

function b64ToUint8Array(b64Image) {
var img = atob(b64Image.split(',')[1]);
var img_buffer = [];
var i = 0;
while (i < img.length) {
img_buffer.push(img.charCodeAt(i));
i++;
}
return new Uint8Array(img_buffer);
}
var b64Image = canvas.toDataURL('image/jpeg');
var u8Image = b64ToUint8Array(b64Image);
var formData = new FormData();
formData.append("image", new Blob([ u8Image ], {type: "image/jpg"}));
var xhr = new XMLHttpRequest();
xhr.open("POST", "/api/upload", true);
xhr.send(formData);用上面这种方式在前端通过js处理,server端不需要进行任何额外处理。
我认为是最方便最直接的办法,反而很多高赞回复,需要server进行各种处理,不推荐。
Had to convert canvas Base64-encoded image to Uint8Array Blob.
参考:https://stackoverflow.com/questions/13198131/how-to-save-an-html5-canvas-as-an-image-on-a-server

配置比较低的虚拟主机,不管是搭在CentOS还是Ubuntu上,Wordpress都会定期出现“建立数据库连接时错误”,那是因为PHP-FPM子进程过多,吃光了内存,MySQL的进程就被干掉了。
通过 netstat -tunlp 发现是MySQL的进程被干掉了,如果service mysqld restart 还重启不了,简单粗暴点就直接reboot。
解决方案
编辑 php-fpm.conf 文件,控制PHP-FPM的子进程数。
1、找到php安装目录etc目录下的 php-fpm.conf 文件:
vim /etc/php-fpm.d/www.conf
2、找到 pm 、pm.start_servers 、pm.min_spare_servers 、pm.max_spare_servers 这几项参数,修改参数的值。pm = dynamic #php-fpm以动态模式运行,动态模式适合内存较小的服务器pm.start_servers = 3 #动态模式下,php-fpm的起始进程数pm.min_spare_servers = 3 #动态模式下,php-fpm的最小进程数pm.max_spare_servers = 10 #动态模式下,php-fpm的最大进程数
3、重启php-fpm
service php-fpm restart
参考:
https://www.centos.bz/2017/12/wordpress%E5%AE%9A%E6%9C%9F%E5%87%BA%E7%8E%B0%E5%BB%BA%E7%AB%8B%E6%95%B0%E6%8D%AE%E5%BA%93%E8%BF%9E%E6%8E%A5%E6%97%B6%E5%87%BA%E9%94%99%E9%97%AE%E9%A2%98%E7%9A%84%E8%A7%A3%E5%86%B3/
https://www.simcf.cc/4671.html