这配置,普通文秘办公胜任,画图狗嘛,至少8G RAM +SSD。就别指望这个了。
今年双11,京东貌似力度挺大。每天可以领红包到11号(每天三次),红包可以累计使用。
据说有人可以领66元,但是我每次都是2毛。哈哈。
]]>数周前,3dg12 那里终于有货了。入手,改造。
目标: 蓝牙,2.4G无线双模,锂电池充电,伟德苹果客户端app下载官网正常能用。。。 记录如下。
到此应该算结束了。 但是指示灯看不见。。准备引出,
下面是大神主板的指示灯,测量了一下,既不共阴,也不共阳。。。呃。。。
找块洞洞板,焊接0603 LED,话说,0603 真小,忽略掉我的渣渣焊工,能用就好。。
合体。
最后,指示灯卡在了C壳和D壳的缝隙中。。。
我的 C壳有变形。 请忽略。。
另外,找了一段旧的手机充电线,引出充电口。没有拍照,也就这样了。懒啊。
最后,补上模块购买记录, 主板(含电池) 70 + 转接口 15 + 接收器(可选,不配的话只能蓝牙,选这个可以2.4G无线) 25 元。
-EOF-
]]>话说,前两天在淘宝上看到十多块还包邮三张的自贴画,心动,购买之。
回来后是三张仿国画的自粘画,质量马马虎虎。见下图。
想了想,用它给家里的配电箱美化一下吧。。
耗时2天空闲时间。。
流水如下:
===
结果,家里又多了 2.5 张 自贴画。。
前天,某好友发邮件问:你的blog换地址了? 我一脸懵圈。。。
上百度,去掉 Easun.org 直接用 "- Easun's Personal Portal,Talk about Movable Type,Perl in China,Softwares and Journals" 标题来搜,首页的第一个第二个均为李鬼。
打开一看,界面一模一样。
抓图:
甚至,某个网站(kcpon)因为还备案了,有公司背景,堂而皇之的进入了"企查查"?
打开抓图(只抓了一个):
==
真的是哭笑不得。 小破博客也要克隆? 发出来,看这篇文章会不会也会同步到盗版上去?
从 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。成功进后台,升级成功。
MT 的 Perl, 头疼,支持的越来越少了。
]]>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.博文页面的上一页,下一页, 合适的位置增加:
话说: Movable Type 用户登录后退出貌似是http://easun.org/path_to_mt/mt.cp?__mode=logout&...
。
然后 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
呢? 费解。
为什么不用官方的原版开发工具呢? 路杨想之,大致有其下几个原因:
> 1. 原版下载太慢,开发人员图省事。
> 2. 开发者自己就用的 黑苹果 开发,正版的开发工具安装不成功。
> 3. 伸手党,图简单省事,第3方渠道的安装是再次封装了,更省事?
不管如何,原来 iOS 的全封闭系统,只要不越狱就可以安全的神话被打破了。。 真可谓道高一尺魔高一丈啊。
这次中招的APP 居然有 `微信`、`网易云音乐`、`滴滴`等用户常用的应用? 根据不完全统计,在本次感染事件中中招的 iOS 用户高达 1亿人?
据悉,苹果官网已经下架了感染的APP,但是对于用户来说,安装在用户客户端上的应用并不会自动删除。
]]><p>都是一些评论、显示界面的调整,一个意图:用户体验。 说的不好听的就是"路杨的强迫症又犯了",反正是折腾无极限。。</p>
<p>这两个月, 整个 Blog 的 js 估计被我修改过不下10次,有些是纯粹为了闭包,有些是为了美观和清晰流程。。。</p>
<p>简单记下曾经的修改吧。</p>
<p>先说前端:</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>
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->auth_type =~ m/^QQ/ ) && $author->hint && ($author->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>