Archive for April, 2012

简短吐槽: 1、plupload 在 IE 核伪多 tab 浏览器下就能用跨域,不然触发安全沙箱,按网上说的不 cache 貌似也没用,不知道和 swfobject 有关系没 这个改源码,import flash.utils.setTimout 之后把 init(); 改成 setTimeout(init, 0); 就搞定了,重新 build 了一版放上,果然 IETester 360 TT 遨游通杀。搜狗真猛,本来就没这问题(兼容模式) 2、backbone.js 0.5.3 在 Firefox 下有 window.location.hash 解析编码问题的 bug,看这里和这里。导致基于 hash 的 ajax 跳转直接 GET 了个 GBK 的地址过去,我晕 升级到 backbone.js 0.9.2 解决 3、backbone.js 0.9.2 依赖于 underscore.js 里的 has 函数,于是升级到 0.3.3,发现 jspacker PHP […]

Thursday, April 12th, 2012 at 05:14 | 0 comments
Categories: Tech

堃哥曾经吐槽过这个,起源应该是有个公司有个部门叫“技术部”。 吐槽的大概意思就是说,很少人做技术的时候,会被呼来喝去“嗨,技术!来给我重装个系统”“嗨,技术!我怎么上不了网了”之类的。当然了该公司该部门不是这样的,只是他觉得很土。 估计C8O当年回湖南的时候大概就这遭遇吧,听说还要包销杂志什么的。恁一个惨字了得。 贵站情况也差不多。不知道谁写的脚本不能用了,“这个脚本怎么不能用了,你修修呗”,“有空把这xx功能写了吧”,“xxx问题还没修好么”,“怎么又卡了” 工作情况也差不多,不过好歹俺还顶着个“总” ,嗯,就管我自己。整天耳朵里就是这个“页面”,那个“页面”,“前台”,“后台”什么的,听着巨别扭又不知道为啥的一堆词儿。 大公司里自然多数时候是术业有专攻,小公司就不可避免地要求你啥都能搞了。我这种啥都涉猎啥都不会的就更惨,反正就是。。学呗。切页面很慢,但也凑合能切,Flash AS 对着文档也能慢慢写点。 前一阵从朋友那知道之前熟悉的帮过忙的一个创业小公司——的一个美工,我当年对其很是不满,页面里一有表单就是 table 嵌 table 中间还嵌着 <form>,套的时候比较头大;浏览器兼容性细节经常需要返工两三次什么的。等到自己开始需要干这事了,搞 HTML 模板了,才发现这玩意真不是我这种苦逼 coder 能驾轻就熟的,据说需要点艺术天赋 … 我这天赋,估计也就是点几个 16×16 的 gif icon 还得被人骂惨了的那种吧,硬着头皮干达到一样的效果至少效率低一半。扯远了,重点是,一个月这哥们就两千(多)块,对的人民币你没听错。我真特么想把丫挖过来……在我见识了无数切的比那烂两个数量级以上的不管外包还是内包的在某些浏览器下打开直接就斯巴达了的页面之后。搞笑的是,我第一个思考的问题是花这两千块一天能多睡几个小时。 前两天看着新一批实习站务估计就要进来了,好几个张嘴就是技术闭嘴也是技术,就好像技术只要做了一个 xxx 功能然后贵站自然就变好了什么都有了。真是这样?历史上失败例子数不胜数啊。 今儿下午闲着无聊(为了避免特定的一个或几个人看到了提出质疑,我要再声明一下,不是不够忙,是忙过劲了需要休息),跟几个搞 php 的朋友讨论了讨论现在比较牛逼的框架啊模板啊 5.4 的新特性什么的。大家都沉浸在理想的海洋里,聊罢各回各家,各自面对的现实是 IE6 透明 png,是我第一次进了后台两眼一抹黑不知道咋操作的 dedecms,是老板布置的烦死人的项目。理想跟现实之间差距还是非常大,我国仍然处于社会主义初级阶段,农业学大寨工业学山寨,任重,而道远。赫然想起几年前参观北邮人办公室的时候,觉得真特么活力四射激情无限理想驰骋。可惜时间慢慢过去,北邮人团队貌似也不是当年心中的惊艳模样,当年那些牛叉的不行的孩子们也已经各奔东西为了一口饭面对惨痛的现实。 引用 xw2423 一句话结尾吧,“工友太辛苦”。其实还有半句“还是去运营商和体制内好啊”我倒未必认同。同学里有几个考公务员的了吧,现在在无比悲催的初级阶段艰难度日。各有各的苦。只是俺们圈里都是挨踢的民工比较多一些罢了。。。

Tuesday, April 10th, 2012 at 20:24 | 2 comments
Categories: Misc
Tags: ,

几件事吧。 第一件,Webkit 和 Opera 居然无视响应里的 Vary: X-Requested-With,于是华丽丽的我的页面破了,只好判断浏览器是这两种就加个?ajax并且在nginx里给他喀嚓掉防止多余的 cache 都特么二十一世纪第二个十年了,居然特么 Squid 2.7 就支持的玩意儿最新的 Chrome 都不支持,搞毛啊,IE6 也只不过是忽略 cache 直接取新的而已,Firefox 应该是去年还是前年就 fix 了。 第二件,PHP 5.4 的 htmlspecialchars() 在 GBK 下不干活了,调试了一下发现是 ext/standard/html.c 里 determine_charset() 里有个 return cs_utf8;,居然 ini 里还没的调 给丫改成 return cs_8859_15; 灭掉了这个问题。不然特么源代码正则替换了就得。。。www2 更新是贵站任何一个系统维护都烦的要死的破事儿。。。 第三件,PHP 5.4 编译完之后 PDO 不干活了,玩命 502,只要 construct 的时候设置了 PDO::ATTR_PERSISTENT => true 就一个劲儿的 segfault,php-fpm 还不好调试,加了个测试环境启单进程发现死在 zend_std_write_property() 这个函数里,放狗搜了一圈没收获。。。。。就琢磨先去了这个破参数吧。。。问问各位大神们。 […]

Tuesday, April 10th, 2012 at 03:33 | 1 comment
Categories: Tech

一言以蔽之,诚彼娘的坑爹 早上一大早起来打车捎上穆小迪童鞋跑到原来机房楼下麦当劳吃饭。吃完饭进去发通告切域名停服务下架一切顺利,十点多到了新机房 等布线等到一点多,然后开机,发现超了电,辗转腾挪又耽误半小时,总算是搞定了限电 开始挨个调试,发现线不通返工,又耽误半小时 然后主站起不来了,kernel panic。IBM 服务器诚彼娘的烂,重启一次十分钟,进了四五次 rescue 才终于想到一个 initramfs 里的旮旯配置把它弄好。 然后胡总的转换数据结构程序总是段错误,嗷嗷琢磨了半天最后神奇地主站能跑二站不能跑,现场 gdb 没调试符号真是伤人,缺一堆 debuginfo 包 sohu 源没有,centos 官方源又太慢。唉。 然后都调通就闪人了,六点多了。特地看了下各个线都正常。去吃饭。又是麦当劳。中午把我家兔忽悠了,本来是大概两点多就去港丽的。呜呜我的港丽 吃一半胡总来电话说转好了。 风风火火赶回家开站,突然开始卡了,交换机上联出方向狂丢包,像极了线虚了,赶紧联系运维接口人,人已经走了,只能明天了。。。。。 其实还有好多想说的,不过有些是不方便说的,算了。。。 贵站的维护,少有顺利,基本都是一个接一个的意外。不管是搬一半服务器莫名坏了,还是突然俩盘红灯,还是明明上次还能起来这次 panic 了,还是线不通、口不够、software NMI。。。 还好了。比去唐山强多了,至少有饭吃,不用长途奔袭,不用遭受回来都走到天津界了突然有个什么又坏了被迫折返的杯具。比前几年真是幸福很多了。 ————————感想暨广告———————— 想知道恶劣条件下运维的感受么?想拥有被上万用户指着鼻子骂又不知道该说啥的体验么? 不能分布式的情况下单机故障如何竭力避免?服务器短缺老旧机架资源还有限比如电不够的情况下如何保证运行正常? 如果你恨一个人,那么就让它来贵站当系统维护吧,也就是大家通常所说的技术站务,技站,当然,也有叫站技的,不好听而已 它需要: 具有一定的运维水平,知道网线怎么做,kernel 怎么编,服务器怎么管,怎么监控,费多少电,什么是 iLO/DRAC/IMM,熟悉 Linux 基本操作,偶尔还有 IBM 服务器插 Dell 盘柜需要刷成公版卡 具有一定的开发水平,知道咋写散列表,知道 IE6 所有常见 bug,知道 ajax 是什么玩意儿,能用 Zend API 扩展 PHP,能用一堆垃圾脚本光速完成各位站务老大们的诡异需求,友站出问题能杀出去以大公无私的精神帮助调试解决问题,偶尔还有 gcc 版本和 kernel 版本造成的诡异问题如何规避 […]

Saturday, April 7th, 2012 at 22:02 | 10 comments
Categories: Tech

今天干了两件事,都和贵站即将上线的 nForum1.1 有关 一个是又调了调 IE6 的 css 兼容性,觉得不厌其烦,深思熟虑之后把这个加上了,IE6 访问每七天(好像是,可设)会弹个小窗 一个是被 IE6-8 在页面中有 flash 的时候 document.title 会加上/变成 window.location.hash 的值,极为不爽,官方 bug 报告页面如是说: http://bugs.adobe.com/jira/browse/FP-240 https://bugbase.adobe.com/index.cfm?event=bug&id=2927932 感慨一下都这么多年了 Adobe 到底是干嘛吃的啊…… 最后我的解决方法是这样的 if ($.isIE()) { document.onpropertychange = function() { if (window.event.propertyName == ‘title’ && document.title != window.origTitle) setTimeout(function(){document.title = window.origTitle}, 1); }; }if ($.isIE()) { document.onpropertychange = function() { if (window.event.propertyName == ‘title’ […]

Wednesday, April 4th, 2012 at 21:11 | 0 comments
Categories: Tech

那什么…花了点时间搞定了WP 3.0 Multisite 和该死的 domain mapping。。。 找俺就这,找俺家三兔请猛击传送门! 可耻地,后来发现 Multisite 还是不太灵活,反正就俩兔,索性装了俩 WordPress …

Monday, April 2nd, 2012 at 10:54 | 0 comments
Categories: Misc
Tags:
TOP