2016年终总结

2016-12-27 18:30:22

希望有时间能在2016.12.31之前写完
2016一晃就飞过去了,来北京已经4年多。年初的wish list 已经提前清理干净了。
生活
充实的一年,人生四大喜事之一。 521 我结婚了 和我的琪泡泡 婚礼上放着SHE的 “我爱你” 然后我们穿越亚欧去了意大利 瑞士 法国 用我这没过4级的破英语和老外度过了半个月。
工作
公司从36人扩张到现在的678人了,加油各位亲,我都成老同志了。 明年估计就要深度React&ES6了 博客全面换成了nodejs,上了https,年会把canvas也搞了,和不伦的一个大公司尽管没有业务,但还是用营业执照办了公众号,他办了微博蓝V,安琪办了搜狐媒体,我开了微信小程序,也算没浪费。 年底和小马哥做了今年互联网浪尖上的一个公司的官网。黄的那个。
其他
股票 我就知道凡是我开始不喜欢的,未来我必定死忠 。今年说的就是股票,从5月的瞎买,到7,8月份的跟庄,再到9月的跟大V,接着又换回自己的跟庄。截止目前没亏微赚(手续费都比我赚得多)算是学费吧,但是好的一点是这些学费换回的是盈利线坡度越来越逆天,雪球和同花顺是今年玩的最贵的app。
找回那些年错过的 弃了十几年的DNF,捡起了wow并升到了满级,看完了整部火影。

UC浏览器广告页面打不开

2016-12-27 17:50:57

最近遇到H5广告页面在UC浏览器下面打不开的情况,UC浏览器设置里面有个拦截广告的,关闭就可以正常打开了。 然后发现页面里不要有“ad” 这个关键词否则UC格杀勿论。所以做H5页面的时候命名一定不要用AD ad 啊。
另外遇到个奇葩的叫 Font Boosting 的bug 就是浏览器会把你的字号放大,方便用户阅读的,然而对前端来说是个坑啊,你写的字号和实际渲染出来的字号不一样。解决方法 html * {max-height:1000000px;} 栈溢出

Macbook卡死解决方案

2016-09-30 15:42:27

更新MacOS后开始巨卡无比,主要体现在桌面图标拖拽卡顿,上传文件卡顿,保存文件卡顿,更奇葩的是换个账户登录就不卡了。
然后知乎谷歌的搜解决办法 什么删搜狗 清缓存 关闭flash 减少桌面文件 重启啥的统统无效。
我最后连siri都关了!!!
最后发现了这个

就是windowServer 这个存在内存泄露的bug,然后我试着结束进程,窗口直接崩了。进入登录页面,然后就不卡了,不卡了,不卡了。
另外提醒大家 新版的MacOS Sierra的vpn没了之前pptp的协议了,又要重新建梯子

DROWN 中间人劫持漏洞

2016-03-02 17:15:16

漏洞描述:
国外安全专家发现了一种名为“DROWN”的中间人攻击方式,漏洞编号为CVE-2016-0800。若服务器支持以“SSLv2”协议和“EXPORT”加密算法进行安全连接时,攻击者通过截获客户端和服务端的通信数据,利用穷举的方式破解出被加密的原文,实现中间人劫持。
漏洞修复:
注:建议在修复前创建服务器快照,以免修复失败造成损失。
打开nginx的配置文件,修改SSL使用的加密算法(若无,请添加):
nginx ssl_ciphers HIGH:!aNULL:!MD5:!EXPORT56:!EXP;
更多见阿里云大大

导入godaddy https证书在微信中打不开页面

2016-02-29 17:46:54

圣诞节在godaddy买了ssl证书,感觉全站https早晚的事,最早的方案用阿里云负载均衡搭建的,自己不用配nginx,直接在阿里那上传证书就好。
大致如下:
前端 这边
80端口监听后端8080端口
443端口监听后端8123端口
后端nginx这边对应
8080来的都rewrite成https请求
8213直接对应你真正的项目端口
要是还有别的域名也都给从定向过来
这样例如我的55u.me
server {
server_name 55u.me ;
rewrite ^(.*) https://orz-i.com$1 permanent;
}
如果你要是安装的全家桶可能防火墙默认打开的,把需要的端口打开,要不访问不了。
vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8213 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
毕竟服务器空闲那么多,阿里的SLB还是要收费的,所以干脆都给放到自己服务器上处理https了。
然后到nginx里配置如下,并记得防火墙打开443端口
server {
server_name ssl.orz-i.com;
listen 443;
ssl on;
ssl_certificate /orz-i.com.crt;
ssl_certificate_key /orz-i.com.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
root /home/wwwroot/default/case;
index index.html index.php;
if ( $query_string ~* ".*[\;'\<\>].*" ){
return 404;
}
location ~ .*\.(php|php5)?$ {
#fastcgi_pass remote_php_ip:9000;
fastcgi_pass unix:/dev/shm/php-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
}

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ { expires 30d; }
location ~ .*\.(js|css)?$ { expires 7d; } }
crt和key 是证书的公钥和私钥。
然后chrome跑的正常,safari正常,两个浏览器都会有绿色小锁。然后打开微信。打不开页面。于是就呵呵了。 用青花瓷抓包发现每次打开页面的时候都会去 godaddy这个地址 http://certificates.godaddy.com/repository/gdig2.crt去下载证书,竟然还是个http的请求,google后发现是证书链有问题,说白了就是证书需要一级一级的放在一起,断了貌似chrome他们会自己去给补全,微信貌似没有自动补全,然后就打不开了。 godaddy上下载的证书会有2个文件,一个是(随机串.crt)一个是(gd_bundle-g2-g1.crt),然后打开文本编辑器,把(随机串.crt)粘到(gd_bundle-g2-g1.crt)上面合并成一个文件。丢到服务器上。


进入全栈https时代

把博客前端迁移到了node上

2016-02-16 18:01:57

终于把多年的老朋友wordpress换成了nodejs,至此博客终于进化成了彻底的全栈,进入https时代。
https遇到个坑

PM2 开发遇到的问题

2015-11-21 12:16:28

1.koa在pm2下无法启动:
起初一直以为是代码有问题,但是发现node --harmony app.js下会正常运行 在pm2 app.js就不可以 服务器上可以 再看iojs上发现了这么句话No more -- harmony flag 突然想起服务器版本上安装的是iojs在iojs里面 不需要--harmony 因为是很早之前的笔记了,只有早期的node版本会出现这个问题,现在iojs和nodejs合并了,不存在这个问题。如果有同学还在用旧版的可能会遇到这个问题。
2.pm2启动mongo:
pm2支持带参数启动,如果你想让mongo启动时带授权模式需要加上auth。 进入到mongo文件夹
pm2 start ./mongod -x -- --auth
3.pm2的logs:
千万别pm2 logs 一直开着,我不会告诉你我内存满了。

阿里云下wordpress遇到的2个坑

2015-11-21 12:02:03

1.Nginx下开启固定连接,就是apache下的rewrite:
在nginx配置文件目录下新建一个 wordpress.conf 内容为
location / {
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
然后进入到nginx.conf文件中在root那一行下面加入:
include wordpress.conf;
重启nginx
2.Mysql内网可以访问,外网访问不了
只因为开了防火墙
如果你确定ip bind 啥的你都放开了,mysql也正常跑着,3306都ok的话,估计就和我是一样的原因了
打开防火墙
vi /etc/sysconfig/iptables
在防火墙列表里加入3306端口开放
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
重启防火墙
service iptables restart

博客归来

2015-11-21 11:47:32

已经有一年多了没写博客了。一直懒,而且一些小东西就记印象笔记里了。
随着前端的工业革命,我自己的前端路也在一起变化
这一年一直在做全栈开发,重点是Node.js。本子换成了rmbp,编辑器换成了我4年前就看好的Sublime
开始NPM,Grunt。
越发的发现Node.js是如此的神奇,胜过我之前的大爱,世界上最好的语言php。
55u.me搬家了,为自己买了阿里云,所以空余时间把整个55u.me搬了过来,换成了现在这个猥琐的玉米。感谢大猫的这么多年的稳定服务,虽然不在那了,但还是给大猫加个广告。
现在的博客还是wp搭建的,全站图片都加了cdn,快了很多,因为是北京的服务器,所以在我这是秒开,nodejs版的blog还在搭建中。架构是基于Nodejs(KOA)+ Mysql + Nginx + Linux之前搭建了一个 Nodejs(KOA)+ Mongo+ Nginx + Linux 的,但是方便wp迁移数据还是换成了Mysql。
这一年的时间一直在做千丁小区,最早版本的千丁小区是ionic搭建的,自带Angular用起来比较爽,但是随着业务的加大用ionic搭建的站点实在显得臃肿,在万能的宝哥的带领下,我们开始了基于node全栈的多页面H5网站。

将要做的事:给自己挖了个硬件坑,下周开始搞树莓派,只因为在人海中听到了node.js可以在树莓派上跑。
 
 

利用Fiddler对手机端数据抓包

2014-07-18 17:31:02

移动端请求测试木有chrome那么方便没有了控制台,调试起来很麻烦,于是利用代理代理抓包的方法来解决这个问题,查看请求cookie神马的。
Fiddler2是个老牌抓包利器,新版内置代理。
1.设置fiddler
 
抓包
抓包
 
 
2.查看本机ip地址win+r 运行cmd 然后用ipconfig看,我这里是192.168.56.1
3.然后设置移动设备,这里拿肾5作说明,安卓设置基本相同。
设置--无线局域网
 抓包
 抓包
现在就可以捕获到移动端设备的请求信息了
抓包