他们和谐一塌糊涂的时候,我没有说话。因为我还可以上水木;
他们和谐水木清华的时候,我没有说话。因为我还可以上天涯;
他们和谐 YouTube 的时候,我没有说话。因为家里穷没有宽带,看不了在线视频;
他们和谐 Facebook 的时候,我没有说话。因为我长得丑,没脸上交友网站;
他们和谐 Twitter 的时候,我没有说话。因为我小时候成绩差,一直不懂英语;
他们和谐 BTChina 的时候,我没有说话。因为我有 VeryCD;
他们和谐 VeryCD 的时候,我没有说话。因为我还有搜索引擎,累一点没关系;
现在他们借扫黄打非,不允许个人注册国内域名了;
现在他们借刀杀人,不断传旨注册商,今后不备案就不给解析了;
现在他们借清理有害信息,折腾国内 IDC 市场了;
现在他们借国家机器打压互联网舆论,准备营造一言堂了;
现在他们赶尽杀绝,准备建白名单制度,就算搬家到国外都没用了;
于是,我不能再不说话了。

所谓预谋已久。CCAV 根据某部门授意,不惜通过八次节目,长篇累牍报道国内网络环境很黄很暴力,注册域名的都是坏人,严重缺乏监管。于是联动效应开始了,CNNIC 随即开始了一连串动作,通过不断地发文的方式来讨好主子。我们可以从早期 CNNIC 的一些公告来分析这场浩劫的始末。

首先,工信部根本未授权 CNNIC 来经营通用网址,但后者一直声称是国家推出的。后来工信部责令 CNNIC 不准以 CNNIC 名义经营通用网址,后者马上成立北龙中网,顺便为自己的中文域名市场铺路。但一成立就受到多方质疑,于是将 11 月 12 日的公告日期修改为 11 月 1 日,以便让该消息下沉,减少影响面。详情可对比公告列表页的日期与公告正文的日期。我们试想,2009 年 11 月 6 日成立的北龙中网的公告日期会在 11 月 1 日吗?相关评论可以参见这里这里

接着在 11 月 30 日,CNNIC 发布了《关于公开域名注册服务投诉方式的通知》,要求在各域名注册服务机构域名注册网站和域名注册表格的显著位置、各域名注册服务机构及分支机构营业场所和客户接待场所的显著位置,公布 CNNIC 投诉中心投诉受理方式。

在 12 月 9 日焦点访谈节目曝光有人利用虚假注册信息从事网上违法行为的情况后,CNNIC 于 12 月 10 日发布了《关于开展域名注册信息专项治理的通知》,要求确认域名注册人资料真实性,对已注册域名进行逐个审核。

同日,CNNIC 又发出《关于对违规域名注册服务机构和注册代理机构的处理公告》以及《关于加强域名注册服务管理规范的公告》,对新网、名富等注册商进行了处罚。我接到新网通知,英文 CN 新注册接口被关闭。

紧接着,CNNIC 在 12 月 11 日发出《关于进一步加强域名注册信息审核工作的公告》,要求自 2009 年 12 月 14 日上午 9 时起所有国内域名新注册需提交书面材料,并隐晦明确只有企业才有注册资格,否则域名将予以注销。

12 月 15 日,工信部发出《关于印发<工业和信息化部关于进一步深入整治手机淫秽色情专项行动工作方案>的通知》(工信部电管【2009】672 号),在宏观上部署了对 CN 域名的强奸方案。

12 月 22 日,CNNIC 发布《CNNIC开通在线投诉举报方式,鼓励举报不良域名应用》,提供在线举报,并为部分举报者提供精美礼品。

然后,12 月 24 日,CNNIC 发布《提醒域名持有者尽快履行网站备案手续》,以最后通牒形式警告在国内注册商注册国内域名的人,再不备案将不给解析和 URL 跳转。

12 月 28 日,CNNIC 发布《CNNIC公布专项行动情况通报》,号称“半月处理不良网站域名 13175 例”,继续忽悠上级。

- 阅读剩余部分 -

前段时间公司有一仁兄购置了一台 DELL 笔记本。由于该仁兄不喜原带 Vista 系统,遂自己折腾重装成 XP。谁知 SP2、SP3 都装了个遍,不是找不到内置摄像头驱动就是找不到蓝牙设备。怒之,恢复回 Vista 又不甘心,旁人建议干脆装个 Win 7 算了。适逢 Win 7 Ultimate MSDN 发布,遂下载了镜像刻盘装之。直接光盘引导不认硬盘,辗转折腾,最后通过 PE 搞定,第三方激活。

一直以来我对于操作系统的选择只有三个。桌面:Windows 2003 Standard Edition,Win 服务器:Windows 2003 Enterprise Edition,Unix 服务器:FreeBSD。也说不出道理来,仅仅是个人喜好而已。当然你也可以是 Geek 或者传说中的高手,只用 Linux 系列做桌面;或者装一个视窗系统给服务器,却不用 RDP,只用 command shell。后来用了 x200,发现很多驱动在 2003 下面实在没法用,忍痛被 XP 强奸至今。现在有人先我做了小白鼠,没多久也就暗地关注 Win 7 的讯息了。

在这个地下工作的过程中,我发现联想 OEM 的 Win 7 Ultimate 也已发布,正好能装在 x200 上。骑驴一晚,刻盘安装。结果比我想象中的好,虽说 Win 7 花哨,但是能够感受到 M$ 在这个系统上花的功夫,尤其是细节体现上。内核、管理工具、任务栏、电池续航能力的改进,都让我决定延长尝试使用这个系统。

不幸的是,在我成功安装完联想 OEM Win 7 之后,我看到了这么一个页面。刚好我目前使用的 x200 原带系统就是 Vista,符合升级条件。一看价格也能接受,就冲动了一把。

订单提交后不久收到一封邮件:

尊敬的 XX,

感谢您的订单。

请在 7 天内提交清楚地注明型号和购买日期的购买凭证。可以按下列方法发送。

- 电邮:将本电子邮件连同购买凭证扫描件发送到 [email protected],邮件主题中清楚地注明订单号。例如,订单号 - LENOVO0000018

- 传真:将本电子邮件连同购买凭证发传真至 +65 6896 2377。

- 信函:将本电子邮件的打印件连同购买凭证发送到:
Lenovo Windows 7 Upgrade Option Program
c/o Mentor Media Ltd
No. 1 Bukit Batok Street 22
Unit 07-01, GRP Building
Singapore 659592

订单日期:Thursday, November 12, 2009
订单号:LENOVO0800791

只有在所选语言的 Windows 7 发布或成功验证您的购买凭证后(以后者为准),才会向您的信用卡收费 RMB 86.50。显示的价格包含税收和运费。 成功付款后,将会向您发送一封电子邮件。

订单详情

升级包  符合条件的产品  语言  PC 型号  序列号
Windows® 7 Ultimate 32-BIT Windows® Vista Ultimate 32-BIT 简体中文  74574AC LVXXXXX

总额 = RMB 86.50

付款只有在11月才会开始。届时将会发送一封含有付款程序的通知邮件。

正在考虑是拍照后邮件还是传真的时候,又收到了第二封邮件(时隔半个小时):

尊敬的 XX

兹告知您可以开始付款了。

订单号: LENOVOXXXXXXX
总金额:RMB 86.50 

请点击 https://ebiz3.mentormediacorp.com/Payment/LENOVO?Email=xxxxxx&OrderNo=LENOVXXXXXXX&Lan_Used=zh_cn,进行付款。

付款完成后,将会向您发送一封电子邮件。

于是我就鬼使神差地付款了。然后当天下午收到一封邮件,告诉你货款已收到;等到实际发货时,会再有邮件通知。

13 天后,我先收到了从上海明德信息科技有限公司通过 Fedex 发来的快递,然后晚上收到了邮件:

尊敬的 XX,

兹告知您的订单已发货,您的订单已完成。

发货详情:

发货地址:XXXX
电邮地址:[email protected]
电话号码:XXXX

产品详情:
Current Product  Upgrade Product  Language  Qty  
Windows® Vista Ultimate 32-BIT Windows® 7 Ultimate 32-BIT 简体中文 1 

您可以按下列方式追踪此订单的状态:
承运人货物追踪网站:http://cndxp.apac.fedex.com
追踪 ID:120254XXXXXX

请注意,可能要在2-3天后才可以在承运人网站上使用追踪ID。

感谢您向我们下订单。

至此,我收到了冲动的全部结果。下面放图:

- 阅读剩余部分 -

此时此刻,凌晨四点,室外零下五度。我在一个虽然谈不上冰天雪地但也寒风刺骨,有时候不随意就会想当然地忘记我在哪里的地方,伴随着《Gran Torino》结局苍老的呻吟,为自己了却了人生一半的路程而暗自窃喜。

正如影片中所说,没有人能够真正了解死亡,因为我们未曾经历。当他在经受垂暮丧妻、老来无伴,只能养狗为伴、深居简出的同时还要忍受着子女们的不孝、邻里朋友异样的眼光、内心挣扎痛苦的翻腾,却在一个异族家庭找到了温暖祥和,寻到了自己的忘年之交。当伊斯特伍德挺身而出的一瞬间,我知道,他已然懂得了死亡意味着什么。

感谢天津的两位朋友赠与的礼物。在生不生日之间游离并不会让我更加看清自己,对于你们表达友情的方式我一并言谢收下。

我们在这个不公平的、不安全的、不快乐的、不和谐的社会上生存,漫步历经人生万般无奈、冷暖辛酸、悲欢离合、生老病死,为的就是在最后一刻懂得死亡。所以,活着并不重要,重要的是如何摆脱活着。

我从未疯癫,也无疾患,更非在此宣扬死亡理论或者因为此时此刻的失意而扯淡发骚。生与死,本身就是一个不曾存在的过程。有人一直看着我们在这个过程中经历了哪些变化,得到了什么,失去了什么。我在这个过程经历到一半的时候,记录下此时此刻的状态。似曾相识,仅此而已。

拿出使用了千万遍的借口继续诉说最近真的很忙,然后给自己留言希望有时间就别让 d80 躺在柜子上安息,然后多发文章让你的朋友知道你至少还在走路。

以后,再不生日。

年轻人的生活往往是精彩且丰富的,更令人羡慕的是,他们可以忽略时间概念。刚欣赏了朱兄的婚纱照片不到三个月,一转眼他们的婚期就到了。上个月末、十一月初,我回杭有幸参加他们的婚礼。

即便身边已有朋友早早地进了围城,但亲身参加还是有史以来第一次。在我的观念中,婚礼是一个神奇的仪式。就进围城这个事情本身而言没有是非对错,不同的经历可以造就不同的结果。于是,进围城的仪式变成了所有人的一次特殊的心路历程。

新郎新娘自然是紧张又兴奋,俗话说“大姑娘坐花轿——头一回”,可见这个第一次的感觉是既陌生又美妙的。如果要说仪式前后两位新人的心理变化,我们可以总结为仪式前可以睁着眼睛说瞎话,仪式后必须打好草稿然后睁着眼睛说瞎话。

双方家长是这场仪式的幕后导演。他们往往在筹办仪式的整个过程中竭心尽力,试图将自己埋藏多年的经验拿出来检验,一边见了天日,一边论证了结果,两全其美。仪式在这样严密的部署下,一般都能顺利结尾。老爷子们都很高兴,因为这场仪式让所有人见证了自己的人脉关系网和调动物质经济的能力。婆婆和岳母想得会少一些,往往在一番忆苦思甜之后开始想象未来的孙子、外孙,还有孙子的孙子、外孙的外孙;同时又不免对未来的婆媳关系产生一丝丝的怯意,嘴角向上微笑的同时眉宇之间多了一分不易察觉的抽动。

剩下伴郎和伴娘就更惨了。一来,他们是新郎新娘的生死兄弟、闺中密友,受邀而来,情谊倒也真切;二来,做伴郎伴娘的都是城外之人,眼看昔日的好友玩伴、同甘共苦的影子突然要进城,冷不丁地像被刺了一下,最后难免用“逝去的不能回来”这样的台词安慰自己,试图抚平在内心摇晃的那么一点点忿忿不平,最后给自己一个很伪善而幼稚的祝福,说每个人都会有自己的幸福的,一定。

值得庆幸的是,我在这场仪式中不属于上述的三种人群。理论上说我是伴郎,但实际上还兼职了摄影。我经常主次不分,所以这次少一点伴郎,多一些摄影,我自己是这样想的、这样做的,别人看到也是一样。尽管如此,由于自身技术的巨大差距、某些器材尤其是三脚架的准备不妥,加之事先未曾去了解外景拍摄、婚礼酒宴的流程,我自以为兼职的产物总是差强人意的。全程跟拍一共七百余张照片,最后挑选了一百多张出片冲印。其中,我制作了一个有声相册作为额外的兼职产物赠与朱兄,权当是抚慰他幼小心灵对我兼职工作的不满罢。

看图不说话时间,谢谢。

- 阅读剩余部分 -

前段时间将博客从独立服务器迁移到了 Godaddy 的主机上,顺便从 Magike 换到了 Typecho。期间先将 Magike 迁移到 Godaddy 的主机上测试,然后将本地安装好的 Typecho 迁移到 Godaddy 的主机上测试,最后在 Godaddy 主机上全新安装 Typecho,整个过程始终被一个诡异的问题所困扰,即重写无法生效。

这个问题源于 Godaddy 主机环境使用的 Apache 版本和 Magike、Typecho 本身使用的 Rewrite 机制。经过自己反复折腾和反复骚扰 70 同学后均没有彻底解决问题,最后易先生眼看自己的博客也受到了影响,于是才亲自动手搞定。

这个问题是这样的:

首先,Godaddy 主机的 Apache 版本是 1.3.33。假设 Magike 或 Typecho 没有开启伪静态,在处理类似 https://www.xuchao.org/index.php/archives/1/ 这样的地址时,服务器会在
/index.php/archives/1/ 这个目录里找 index.php 然后来执行,并不会带上 /archives/1/
这个参数,所以点到哪都是首页。若 Magike 或 Typecho 开启了伪静态,浏览器则会接收到 404 错误。

要解决这个问题,大致有两种方案:
1、改变 Magike 和 Typecho 的 URL 传参形式,及程序获得参数的方法;
2、通过升级 Apache 版本等方式,解决服务器对 Magike 和 Typecho 的 URL 的识别。

很显然,在一个租用环境中无法做到第二点。因此只能考虑调整 Magike 和 Typecho 的 URL 解析的函数。

最后问题是这样解决的:

1、Magike

在根目录 index.php 的 include('./core/core.php'); 这行前面加上如下代码:

$baseInfo = @explode('?', $_SERVER['REQUEST_URI'], 2);
if (is_array($baseInfo))
{
        $_SERVER['REQUEST_URI'] = $_SERVER['REQUEST_URI'];
        $_SERVER['PATH_INFO'] = $baseInfo[0];
        unset($_GET);
        if ($baseInfo[1])
        {
                $getInfo = @explode('&', $baseInfo[1]);
                foreach ($getInfo as $v)
                {
                        $getInfo2 = @explode('=', $v);
                        $_GET[$getInfo2[0]] = $getInfo2[1];
                }
        }
}

如果启用了伪静态,则需要修改 .htaccess 文件如下:

RewriteEngine On
RewriteBase /
RewriteRule index(\.)php/(.*) /index.php?/$2 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L]

2、Typecho

在根目录 index.php 的 Typecho_Plugin::factory('index.php')->begin(); 这行前面加上上面一样的代码,若需伪静态,.htaccess 文件也一样。

值得庆幸地是,以上问题仅存在于 Magike 和 Typecho 0.6 以下(含)版本,最新的 Typecho 0.7 正式版已完全解决此问题。

问题解决,立此存照。感谢易先生的帮助与 70 同学的辛勤耕耘。

2013 年 4 月 13 日更新:关闭本篇文章评论,垃圾太多。