路杨笔记 http://easunlee.cn/ 学习BV伟德下载,随笔及心情 路杨笔记 http://www.easunlee.cn/archives/113.html 2019-11-06T21:40:00+08:00 暗叹一下双11京东的价格。 低配版Thinkpad E480 领取300元优惠券后仅售2299元。 地址: https://u.jd.com/uvgKWl 这配置,普通文秘办公胜任,画图狗嘛,至少8G RAM +SSD。就别指望这个了。 今年双11,京东貌似力度挺大。每天可以领红包到11号(每天三次),红包可以累计使用。 地址: https://u.jd.com/Dk0QyY, 据说有人可以领66元,但是我每次都是2毛。哈哈。 路杨笔记 http://www.easunlee.cn/archives/112.html 2019-08-14T16:49:30+08:00 话说,保留了一个ThinkPad X61下半身,想改双模伟德苹果客户端app下载官网键盘久矣。可惜拖延症加上肖大神(3dg12)的套件缺货,一直闲置。。。数周前,3dg12 那里终于有货了。入手,改造。目标: 蓝牙,2.4G无线双模,锂电池充电,伟德苹果客户端app下载官网正常能用。。。 记录如下。旧主板没有移除,做配重,但是键盘接口有冲突,放不平,直接上钳子,扳掉,把套件的接口板粘在原位。电池和主板放在硬盘位。用双面泡沫胶固定。。到此应该算结束了。 但是指示灯看不见。。准备引出,下面是大神主板的指示灯,测量了一下,既不共阴,也不共阳。。。呃。。。找块洞洞板,焊接0603 LED,话说,0603 真小,忽略掉我的渣渣焊工,能用就好。。 合体。最后,指示灯卡在了C壳和D壳的缝隙中。。。我的 C壳有变形。 请忽略。。另外,找了一段旧的手机充电线,引出充电口。没有拍照,也就这样了。懒啊。最后,补上模块购买记录, 主板(含电池) 70 + 转接口 15 + 接收器(可选,不配的话只能蓝牙,选这个可以2.4G无线) 25 元。-EOF- 路杨笔记 http://www.easunlee.cn/archives/111.html 2019-08-14T16:48:10+08:00 家里已经装修10多年,配电箱位置处于客厅高位,本来就不好看,且因为年代问题,严重发黄。。话说,前两天在淘宝上看到十多块还包邮三张的自贴画,心动,购买之。回来后是三张仿国画的自粘画,质量马马虎虎。见下图。想了想,用它给家里的配电箱美化一下吧。。耗时2天空闲时间。。流水如下:第一日:先白色自喷漆翻新配电箱。。营造相框的感觉。。没有拍照,因为太乱了,也没有想到拍照。等待油漆自然晾干第二日: 裁一块自贴画的下半身,山水的那张(太大,只需要1半),拆掉锁具,开始执行贴膜技术。。。。开洞,装回锁具。完成后抓图:=== 结果,家里又多了 2.5 张 自贴画。。 路杨笔记 http://www.easunlee.cn/archives/110.html 2019-07-22T14:53:00+08:00 近两年没有写BLOG了。生活的重心貌似随着年龄渐渐偏移到其他地方。但是,Blog 依然挂再网上,也依然续费保存。前天,某好友发邮件问:你的blog换地址了? 我一脸懵圈。。。上百度,去掉 Easun.org 直接用 "- Easun's Personal Portal,Talk about Movable Type,Perl in China,Softwares and Journals" 标题来搜,首页的第一个第二个均为李鬼。打开一看,界面一模一样。抓图:甚至,某个网站(kcpon)因为还备案了,有公司背景,堂而皇之的进入了"企查查"?打开抓图(只抓了一个):==真的是哭笑不得。 小破博客也要克隆? 发出来,看这篇文章会不会也会同步到盗版上去? 路杨笔记 http://www.easunlee.cn/archives/109.html 2017-12-11T20:02:53+08:00 Typecho升级错误白屏?从 1.0 升级到 1.1 ,一直是白屏,啥都不显示。。 研究了一下,暂时改名config.inc.php,执行 install.cgi ,这下,错误提示出来了:PHP Parse error: syntax error, unexpected '[', expecting ')' in /www/html/install.php on line 242 嗯。明白了。 系统的 php 版本太低。。。 一定要大于 5.4 ...升级 php 版本到5.5。重启服务器,改回config.inc.php。成功进后台,升级成功。 路杨笔记 http://www.easunlee.cn/archives/108.html 2016-03-09T12:53:00+08:00 最近 easun.org 要到期了。。Godaddy 的主机。资源有点低,究竟是续费还是 VPS 一下?有点纠结。MT 的 Perl, 头疼,支持的越来越少了。vultr 路杨笔记 http://www.easunlee.cn/archives/107.html 2015-10-21T17:11:00+08:00 在 Typecho 上启用了 bigfa 的 Puma主题 ,感觉超赞。 根据自己需要,调整了一些东西。 特意记下,以免忘记。1.首页 more 标签 CSS 定义 和 text-shadow。 p.more { text-align: center; padding-top: 25px; } p.more a { border: 1px solid rgb(204, 204, 204); border-radius: 5px; padding: 5px 10px; } p.more a:hover { background-color: #3B5998; color: #FFF; } .textShadow { text-shadow: 1px 1px 2px #666; } 2.顶部距离调整: .surface-content { margin: 10px auto 100px; max-width: 900px; background-color: #FFF; } 3.博文页面的上一页,下一页, 合适的位置增加: 上一篇: <?php $this->thePrev('http://www.easunlee.cn/%s','没有了'); ?> 下一篇: <?php $this->theNext('http://www.easunlee.cn/%s','没有了'); ?> 路杨笔记 http://www.easunlee.cn/archives/106.html 2015-09-22T20:34:00+08:00 This is a sitelog of Easun.org.话说: Movable Type 用户登录后退出貌似是http://easun.org/path_to_mt/mt.cp?__mode=logout&amp;... 。然后 302 回到当前页面。这个过程究竟是干什么呢? 首先清理掉了 Session,这个是必须服务器支持的。那么问题来了, 能不能不 302 ,直接我用 ajax 访问 上面的那个链接 OK ?测试了一下。貌似 js 清除的 cookie 的值 mt_blog_user 为只是前台使用的。 后台使用还有 "mt_commenter","commenter_name","commenter_id" 这三个 cookie。 而 302 回原来界面的时候会清除这些 cookie.知道了答案,于是开始修改,逻辑很清楚,ajax 访问上面的链接,清除服务器Session,然后自己写JS,清除这些 cookie,不就和原来逻辑一样了吗? 这样,点“退出”的时候页面不会跳转,会友好的多。修改如下:增加 clear_login_cookie 函数:如下function clear_login_cookie() {var name_array = ["mt_commenter","commenter_name","commenter_id"];var i = name_array.length;while (i--) {var name= name_array[i];mtDeleteCookie(name,mtCookiePath, mtCookieDomain,location.protocol == 'https:');}}修改 mtSignOut 函数。定位 location.href="vsm;" 修改为: //location.href="vsm;" clear_login_cookie(); $.get(url, {ajax:'1'}); mtFireEvent('usersignin'); 以为万事大吉,结果,运行之,发现虽然显示退出了, 但是mt_commenter","commenter_name","commenter_id 三个 cookie 并没有清理掉???多处 Debug 无果, 最后又回归到了原来的模式,仔细研究了一下直接访问 302 的 cookie 设定:mt_commenter=; path=/; expires=Fri, 25-Sep-2015 02:02:10 GMTcommenter_name=; path=/; expires=Fri, 25-Sep-2015 02:02:10 GMTcommenter_id=; path=/; expires=Fri, 25-Sep-2015 02:02:10 GMT呃,貌似根本没有 CookieDomain 设定。。。。根本原因在于:> JS如果要删除(重新设置)某个 cookie ,必须知道原来设置的 path 和 domain,不然会认为是完全不同的两个 cookie , 而悲催的事情是 js 无法获知原来设置的 cookie 的 path 和 domain的。原因知道了,只好硬编码了。幸好 mtCookiePath 定义的本身就是 /,回到 function clear_login_cookie(),重写如下: function clear_login_cookie() { var name_array = ["mt_commenter","commenter_name","commenter_id"]; var i = name_array.length; while (i--) { var name= name_array[i]; mtDeleteCookie(name,mtCookiePath); } } 再次测试,一切 OK 。 但是弯路浪费了我 N 长时间。 记下来供同好者鉴。吐槽一下: 为什么 Movable Type 设定这些 cookie 要和 公开的 cookie (mt_blog_user) 设定不同的 path 和 domain 呢? 费解。 路杨笔记 http://www.easunlee.cn/archives/103.html 2015-09-22T00:37:10+08:00 话说, XcodeGhost 是最火的话题了。。。。 你不作恶我不作恶,没有想到开发工具有问题。 于是乎,很多APP也就被做恶了。。。为什么不用官方的原版开发工具呢? 路杨想之,大致有其下几个原因:> 1. 原版下载太慢,开发人员图省事。 > 2. 开发者自己就用的 黑苹果 开发,正版的开发工具安装不成功。 > 3. 伸手党,图简单省事,第3方渠道的安装是再次封装了,更省事?不管如何,原来 iOS 的全封闭系统,只要不越狱就可以安全的神话被打破了。。 真可谓道高一尺魔高一丈啊。这次中招的APP 居然有 `微信`、`网易云音乐`、`滴滴`等用户常用的应用? 根据不完全统计,在本次感染事件中中招的 iOS 用户高达 1亿人?据悉,苹果官网已经下架了感染的APP,但是对于用户来说,安装在用户客户端上的应用并不会自动删除。 路杨笔记 http://www.easunlee.cn/archives/98.html 2015-09-16T16:52:00+08:00 <p>随笔写下一些东西,作为 SiteLog 和备忘。</p><p>都是一些评论、显示界面的调整,一个意图:用户体验。 说的不好听的就是"路杨的强迫症又犯了",反正是折腾无极限。。</p><p>这两个月, 整个 Blog 的 js 估计被我修改过不下10次,有些是纯粹为了闭包,有些是为了美观和清晰流程。。。</p><p>简单记下曾经的修改吧。</p><p>先说前端:</p> ajax提交优化。 所有流程彻底闭包为一个函数,和 json 显示本地评论互动,增加了提交成功后如果通过审查的话,动态加载新评论及动画,并同时重置评论提交表单。 <p>多说评论界面优化。 绑定了原来系统的显示/隐藏评论、 显示/隐藏评论框的函数,让原来界面的操作同时操作两个系统的界面。 在 SOTHINK 的提示下,虽然依然设置多说评论框为默认,但是登录本地系统(包括QQ等本地系统支持的社交帐号)的朋友则显示"本地评论系统评论框"。 代码片段为:</p> var check_mt_user = function(u) { if(typeof duoshuoQuery.is_ds_hide =='undefined') { if (!u) u = w.mtGetUser(); if (u && u.is_authenticated) { duoshuoQuery.is_ds_hide=true;} else duoshuoQuery.is_ds_hide=false; } }; </li> <li><p>本地json评论界面优化。 彻底完成本地评论js的闭包。进一步和多说评论界面糅合, 增加了刷新 和 重载 两个操作界面,前者从本地文本静态json cache中重新获取本地评论,后者读取 MySQL 库实时获取本地评论。</p></li> <li>延迟加载图片重写。 也完成了一次JS闭包。 美化了延迟加载图片时候占位的动画,因为目前本站仅在评论者头像上使用延迟加载图片技术,也许大家并不能彻底体验到界面的加载过程(因为加载的太快了)。。。</li> </ol> <p>上面的所有修改,均可以查看本站现有 JS 来获得代码。 本站的 JS 并无加密 :P</p> <p>再说后台:</p> <p>彻底解决了QQ头像、Gravatar 头像显示问题。 并缓存Gravatar 头像到本地。 不同原来的做法。这次写 插件,直接 hook 了 MT::Author::userpic_url 。 比较极端的做法。 代码如下:</p> our($old); { no warnings 'redefine'; no strict 'refs'; require MT::Author; If ($old = MT::Author->can('userpic_url')) { *MT::Author::userpic_url = sub{ my ($author) = @_; if ( ($author-&gt;auth_type =~ m/^QQ/ ) &amp;&amp; $author->hint && ($author-&gt;hint=~ m!^https?://!) ) { return $author->hint. '#QQ' ;} my ($oldurl) = $old->(@_); return $oldurl if ($oldurl); my $email = $author->email; return &_hdlr_gravatar_url_mail($email); }; } } </li> <li><p>更换了后台插入图片后的显示,适应 HTML5。 这个没有写插件,直接Hacklib/MT/Asset/Image.pm 中的 can_html 。 更加的简单粗暴。 代码片段如下:</p> $text = sprintf( '<figure class="post-image"><img title="http://www.easunlee.cn/%s" src="http://www.easunlee.cn/%s" http://www.easunlee.cn/%s http://www.easunlee.cn/%s /></figure>', MT::Util::encode_html( $asset->label ), MT::Util::encode_html( $asset->url ), undef,undef, ); </li> </ol> <p>要查看详细的修改文件,可以移步到我的 GitHub。</p> <p>其他:</p> <p>话说,多说 服务器维护了。 貌似以为会好一点,结果似乎结果一样? 另外,多说评论加载不出来时候,下面的加载动画一直显示的时候, 这个时候刷新就OK了,觉很奇怪, 查看了一下 log。 结果,100% 的在出现这个状态的时候,浏览器报错:</p> <p>17:24:55.691 Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://easun.duoshuo.com/api/threads/listPosts.json?thread_key=301&author_key=1&url=http%3A%2F%2Feasun.org%2Fblog%2Farchives%2Fgodaddy_cpanel_perl_dbdmysql.html&title=Godaddy%20cPanel%20%E4%B8%BB%E6%9C%BA%E5%92%8C%20Perl%E6%A8%A1%E5%9D%97%20DBD%3Amysql&require=site%2Cvisitor%2Cnonce%2Clang%2Cunread%2Clog%2CextraCss&site_ims=1442293934&lang_ims=1442293934&referer=http%3A%2F%2Feasun.org%2Fblog%2F&v=15.4.27. (Reason: CORS header 'Access-Control-Allow-Origin' missing).1 <unknown></unknown></p> <p>干啥子嘛~~明显的服务器响应问题。。。判断跨域的服务端脚本的得到没有执行。。其实listPosts.json 返回数据了,可惜被浏览器拒绝了。 难怪不显示。。。。。。话说,抛开 服务器 判断跨域的服务端脚本的问题。 listPosts.json 难道一定要用 JSON 模式? 又不是 POST, GET 而已,换成 JSONP 模式不就万事大吉了,而且也能节省服务器的判断跨域,输出 Access-Control-Allow-Origin header。。。。。。</p><p>另外,服务器维护了, 貌似脚本的版本还是 2015-04-27 。。。。</p>