神奇bug在哪里

2021-03-12 09:39:44

需求: 短域名universalLink唤起
ios12短链接唤起universalLink失效现象 ios 10,11 之前项目证书全部有效ios12 pps证书无效,外网短连接唤不起
查找路径  
https://case.orz-i.com/apple-app-site-association  有效

https://turl.iqiyi.com/ukwzy  短链有效

3 低于ios12 有效
 来看一下苹果文档
https://developer.apple.com/library/archive/documentation/General/Conceptual/AppSearch/UniversalLinks.html#//apple_ref/doc/uid/TP40016308-CH12-SW1


苹果这里讲的是或,但是实际上公网 ios12 逻辑是优先查找 /.well-known/apple-app-site-association 文件 如果404再去查找/apple-app-site-association  由于case.orz-i.com上没有/.well-known/apple-app-site-association直接返回404苹果会默认向上继续找文件。
Upload the apple-app-site-association file to your HTTPS web server. You can place the file at the root of your server or in the .well-known subdirectory.
这里讲不要有任何重定向The file needs to be accessible via HTTPS—without any redirects
但是此次短域名服务不同,通过看ng配置发现,之前重定向里面没有 .well-known/apple-app-site-association 文件,而白名单之外的路径将全部回源到短域名服务,相当于ios12苹果优先查找的文件直接跑到else里面了,而这里else的逻辑刚好是走短域名服务,短域名服务正好是重定向,直接导致证书失效

总结:universallink要注意的几点

1.必须是https

2.不能重定向

3./.well-known/apple-app-site-association  /apple-app-site-association  两个文件下都要有证书

4.必须跨域


神奇bug在哪里

2021-03-12 09:22:15

相关bug内容 (引入 vconsole post请求失败 ;bridge无效)

由于vconsole为了优化数据展示效果重写了 JSONStringify 

相关更新记录:

https://github.com/Tencent/vConsole/commit/d7987542e29e5412e9ffde70ca32721738803ef8

-----19年已修复

vconsole团队在12月21日更新了错误版本3.2.0至

https://res.wx.qq.com/mmbizwap/zh_CN/htmledition/js/vconsole/3.0.0/vconsole.min.js

------ bug复活

导致JSON.stringify()的返回值都是[object object]

相关vconsole链接换成自己的cdn

http://static.iqiyi.com/skh5/vconsole/vconsole.min.js



嗖的一下,六月了~~

2017-06-02 15:09:00

一转眼又半年

正如年初预计的一样,开始写react,完成了新版的旅游,并且因此绩效拿了个A。

考虑到之前自己阿里云版本控制的不合理,于是又加了块硬盘搭建了git,这样如果不是手贱,应该不会再丢东西了。

wow买了年卡后就没怎么上过,一直和小伙伴去玩亡者农药。

一直想写博客,然后发现迁移到node环境后,没写发布的入口,尴了个尬。

富文本找到了这个 wangEditor  小巧好用 

好吧,没啥写的了主要是测一下富文本


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 一直开着,我不会告诉你我内存满了。