Google的 AdSense
是个好东东,但是当教育网内的用户浏览我的 Blog 时,由于不能直接出国,
这个广告无法显示;同时由于 CSDN Blog 的这个模板把“公告”放在比较靠前的一个 div 里,这个广告无法显示直接影响了后面的正文的显示速度。
使用一个 PHP 页面检测 client 的 IP 地址,假如在教育网内,就不显示什么,如果不是,就显示 Google 的广告;而在 Blog 的配置里不直接载入广告,而是用一个 iframe 显示上面的 PHP 页面,就解决了问题。
下面是代码(不知道教育网的地址段,故用南大的几段 IP):
嵌入页面的 iframe:
<iframe src="http://path/to/google.php" frameborder="0" height="125" scrolling="no" width="125">
[ads]
</iframe>
google.php:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head><title>Sponsorship</title>
<style type="text/css">
body {margin: 0; padding: 0; background: #F5F5F5; }
</style>
</head>
<body>
<?
$clientip=($_SERVER["REMOTE_ADDR"]);
if (!ereg('202\.119\.[0-9]+\.[0-9]+',$clientip) && !ereg('210\.2[89]\.[0-9]+\.[0-9]+',$clientip) )
{
?>
<script type="text/javascript"><!--
这里是 Google Adsense 的参数
//-->
</script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<?php
}
?>
</body>
</html>