前事不忘,后事之师:纪念南京大屠杀74周年

2011-12-13

今天看到同学的微博,才知道原来今天是南京大屠杀74周年纪念日。

差一点,就忘掉了,真是惭愧惭愧。

故发此文聊以纪念在南京大屠杀中死去的300,000中华同胞。

想想历年以来,凡是涉及到日本的问题,gov一向是不做宣传,目的很简单——怕出事儿。

人们,大概也都忘却了,曾经有一群败类在自己的祖辈头上作威作福。

三十万的中华同胞,谁人来纪念?

想我泱泱中华,谁人来发扬光大! 阅读全文 »

Google Page Speed Service IPV6访问可用!

2011-12-07

我在上一篇文章《利用Google Page Speed Service搭建IPV6访问代理》中从理论上分析了利用Google Page Speed Service作为IPV6代理的可行性,但受制于当时的环境未能准确验证实施的可行性。我今天在IPV6环境下测试了下,发现确实可用!而且速度很好。

传个图:

Google-Page-Speed-Service-IPv6 阅读全文 »

利用Google Page Speed Service搭建IPV6访问代理

2011-12-03

你还记得大明湖畔的Google Page Speed Service吗?就在几个月前,Google发布了一个叫做Page Speed Service的服务,该服务旨在优化Web页面,提高用户的访问速度。根据该服务的要求,用户需要将需要加速的域名CNAME到ghs.google.com。从原理分析,Google Page Speed Service使用的是反向代理技术,即用户向Google GHS发起请求,如果GHS有缓存内容的话,直接返回缓存的内容;木有缓存内容的话,就进行回源操作。

在国内,由于众所周知的原因,GHS服务一直处于“不存在”的状态,所以,从一定意义上来说,Google Page Speed Service的大范围使用对国内用户来说并非一件好事——谁使用了Google Page Speed Service服务,谁的网站在国内就“不存在”了。所以说,很长时间以来,GHS服务就是一块鸡肋。

最近,我从谷奥处的一篇老文章得知,Google已经对GHS开启了IPV6支持,原本需要ipv4访问的ghs服务,现在可以通过CNAME到ghs46.google.com同时开启对ipv4和ipv6用户的支持。看到这个消息,我不禁为之一震:那我们不就可以通过Google Page Speed Service为网站开启iPV6服务了嘛! 阅读全文 »

淘宝的Web服务器Tengine开源啦!

2011-12-03

近日,我从淘宝核心系统团队博客获知,淘宝的Web服务器Tengine正式开源啦!

Tengine服务器软件基于最新的Nginx稳定版(Nginx-1.0.10),Tengine团队并在它的基础上开发了一些功能、做了一些bug的修复工作。起初,Tengine服务器软件仅仅用来处理静态文件、PHP等,后来,Tengine团队又在Nginx上开发了几十个各种用途的模块。随着对Nginx的越来越了解,Tengine团队发现Nginx本身已经不能够完全满足他们的需求了,于是他们就开始对Nginx核心进行定制和开发。Tengine团队考虑到开发的功能对其它的互联网用户也可能有用处,所以Tengine团队就想到了把这些公用的功能开源出来。于是就有了今天开源的Tengine Web服务器软件。 阅读全文 »

SAE环境下开启WordPress评论自动邮件回复功能

2011-11-28

鉴于SAE环境的特殊性,WordPress在常规PHP环境下的评论邮件自动回复功能不能正常使用,需要做一些改动才可以。

首先我要说明的是,我要实现的是让访客决定是否需要在有人回复他的时候接收邮件。

使用SAE Editor,进入所用主题的编辑界面,在functions.php文件中的<?php和?>之间添加以下函数:

/* 所有回复都发邮件 马文建的博客 https://mawenjian.net/ */
function comment_mail_notify($comment_id) {
  $admin_notify = '1'; // admin 要不要收回复通知 ( '1'=要 ; '0'=不要 )
  $admin_email = get_bloginfo ('admin_email'); // $admin_email 可改为你指定的 e-mail.
  $comment = get_comment($comment_id);
  $comment_author_email = trim($comment->comment_author_email);
  $parent_id = $comment->comment_parent ? $comment->comment_parent : '';
  global $wpdb;
  if ($wpdb->query("Describe {$wpdb->comments} comment_mail_notify") == '')
    $wpdb->query("ALTER TABLE {$wpdb->comments} ADD COLUMN comment_mail_notify TINYINT NOT NULL DEFAULT 0;");
  if (($comment_author_email != $admin_email && isset($_POST['comment_mail_notify'])) || ($comment_author_email == $admin_email && $admin_notify == '1'))
    $wpdb->query("UPDATE {$wpdb->comments} SET comment_mail_notify='1' WHERE comment_ID='$comment_id'");
  $notify = $parent_id ? get_comment($parent_id)->comment_mail_notify : '0';
  $spam_confirmed = $comment->comment_approved;
  if ($parent_id != '' && $spam_confirmed != 'spam' && $notify == '1') {
    $wp_email = 'no-reply@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME'])); // e-mail 发出点, no-reply 可改为可用的 e-mail.
    $to = trim(get_comment($parent_id)->comment_author_email);
    $subject = '您在 [' . get_option("blogname") . '] 的留言有了回复';
    $message = '
    <div style="background-color:#eef2fa; border:1px solid #d8e3e8; color:#111; padding:0 15px; -moz-border-radius:5px; -webkit-border-radius:5px; -khtml-border-radius:5px;">
      <p>' . trim(get_comment($parent_id)->comment_author) . ', 您好!</p>
      <p>您曾在《' . get_the_title($comment->comment_post_ID) . '》的留言:<br />'
       . trim(get_comment($parent_id)->comment_content) . '</p>
      <p>' . trim($comment->comment_author) . ' 给您的回复:<br />'
       . trim($comment->comment_content) . '<br /></p>
      <p>您可以点击<a href="' . htmlspecialchars(get_comment_link($parent_id)) . '">查看回复的完整內容</a></p>
      <p>还要再度光临 <a href="' . get_option('home') . '">' . get_option('blogname') . '</a></p>
      <p>(此邮件由系统自动发送,请勿回复.)</p>
    </div>';
    $from = "From: \"" . get_option('blogname') . "\" <$wp_email>";
    $headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n";
    wp_mail( $to, $subject, $message, $headers );
    //echo 'mail to ', $to, '<br/> ' , $subject, $message; // for testing
  }
}
add_action('comment_post', 'comment_mail_notify');

/* 自动加勾选栏 */
function add_checkbox() {
  echo '<input type="checkbox" name="comment_mail_notify" id="comment_mail_notify" value="comment_mail_notify" checked="checked" style="margin-left:20px;" /><label for="comment_mail_notify">有人回复时邮件通知我</label>';
}
add_action('comment_form', 'add_checkbox');
// -- END ----------------------------------------

如果是普通PHP环境的话,完成此步就可以实现回复的功能了。 阅读全文 »

各公司纷纷发力CDN,CDN大战在所难免

2011-11-26

近一年来,伴随着云计算的日益成熟,各大国内互联网公司纷纷发力CDN——从蓝汛旗下Webluker的免费CDN加速服务,到盛大云旗下按需付费的数字分发系统,再到创新工场刚刚推出不久的”安全宝“,一个个的国内互联网大鳄,如过江之鲫一般,纷纷发力CDN这一新兴市场,一场CDN市场上大战在所难免。CDN这一普通网站可望而不可即的贵族技术,也必将伴随着四起的狼烟,跌下神坛,成为各家网站的必备之选。

阅读全文 »

安全宝——创新工场旗下的免费CDN加速服务

2011-11-26

anquanbao-logo

安全宝”网站保护系统是李开复先生创新工场旗下的一个项目。”安全宝”为社区内的网站提供一站式的安全解决方案,网站在“零部署”、“零维护”的情况下,防止诸如XSS、SQL注入、木马、零日攻击、僵尸网络等各种网站安全问题。同时,安全宝综合采用跨运营商智能调度、页面优化、页面缓存等技术,进一步提升访问速度,降低故障率,从而整体提升网站的用户体验。

近日,安全宝在其媒体发布会上对外宣布,将把“免费策略”作为公司长期发展的基础战略。安全宝CEO马杰在发布会上表示,安全宝推出这次免费战略,是希望可以让基础的网站安全服务更快地在行业中普及,同时也希望更多的安全友商加入到这一行列。所以啊,咱们这些小站长们有福啦,咱们可以在相当长的一段时间里免费使用“安全宝”提供的服务了! 阅读全文 »

传电信联通宽带反垄断案不会和解 或从重处罚

2011-11-26

telecom-vs-unicom

“关于宽带反垄断的事情,最快下周会有一个初步结果出来。”11月24日,有知情人士告诉记者。而业界另有传言称,电信联通的一些做法可能惹怒了发改委,导致反垄断的调查不会和解,而是“从重处罚”。

根据目前披露的消息,发改委从今年4月就启动了针对电信、联通的反垄断调查,调查的直接原因是因为有人举报。种种迹象表明,所谓的举报材料或者关键材料之一就有来自社科院信息化研究中心针对互联网接入领域的调研报告。

据参与调研报告的高红冰告诉记者,在宽带反垄断的调研报告整理出来之后,其实往各个层面的政府机构都有递交,当然包括发改委、工信部等等,“因为研究成果上报相关部门是很正常的事情”。

最终,发改委启动了调查。但发改委反垄断调查的推进似乎并不顺利。让事情得到真正发酵的是央视以直接采访发改委的形式曝光了整个事件。随后,公众对反垄断的呼声群情激昂,各利益方也透过媒体展开了舆论战。 阅读全文 »

今天为博客增加了海外CDN节点

2011-11-23

首先是蛋疼,其次是为了提高博客的访问速度,今天为博客增加了海外CDN节点。

本来打算使用GooglePage Speed Service来着,一来是相信Google的服务品质,二来是Google那遍布全球的加速节点,让人不得不嫉妒啊!其实这些都不是最重要的,最重要的是Google拥有遍布全球的专有网络,自己家的高速公路和公用的公路能一样啊?

但令人悲催的是,ghs.google.com的IP在大陆被干掉了,本来这对海外用户也没影响啊。这时候就得说说那个“智能”DNS的DNSPOD了,活生生把国内用户解析到了海外,也就是说,用户要访问被墙的IP了。

啊!啊!啊!肿么办啊!好吧,我还是用incapsula的服务吧,木有被墙。行了,先这么凑活着吧。有问题以后再改。 阅读全文 »

SAE环境下WordPress插件移植注意事项

2011-11-22

要想把wp插件成功移植到sae上,首先应该搞清sae支持的受限PHP语言和完整版本的PHP语言有何区别。我认为SAE和完整版PHP有如下区别:

最显著的不同莫过于文件操作和文件存储了。首先说文件操作,SAE出于安全性考虑,禁用了很多本地文件操作函数,并且没有提供替换的函数,我认为将来开放的可能性也不是很大,因为这关系到整个云平台的安全性。然后是文件存储,SAE采用和Amazon S3类似的存储技术,将静态文件存放到单独的服务器上,尽管这样有利于文件的集中管理,也有利于使用CDN技术将静态文件分发到网络边缘,但同时带来了一个问题——即不能使用PHP原生函数进行静态文件的存取操作,所以这部分函数需要替换掉。

其次,不同于Apache的.htaccess文件,SAE使用AppConfig文件来对web服务进行配置。如果wp需要使用urlrewrite等功能的,注意对此进行相应更改。

原先SAE不支持的cUrl函数、GD库等函数,现在已经通过函数重载实现,所以这部分可以不必考虑。

别的嘛,暂时没想出来,以后接着补充。

第 16 页,共 18 页« 最新...10...1415161718