乌徒帮技术范玩遍IT免费资源 › 免费空间去除广告的六种办法

免费空间去除广告的六种办法

分类:免费资源

国外的免费空间都是有广告的,但是这些广告大多数可以通过技术手段去除。

首先说一下国外空间显示广告的原理,国外免费空间通常会通过PHP自动加载一个程序,检测网页代码,在</body>和</html>标签后自动加上广告代码,比如kilu.de就是在</body>后添加广告。其实你只要在浏览器里查看源代码,和本地源代码比较后就知道广告加在什么位置了。

1、部分不是很顽固的广告可以通过开启网页的gzip压缩去除 (对于kilu.de无效)

2、可以去掉</body>和</html>标签,这样就不会被自动加上广告,我记得以前有人就是通过去掉结束标签减少网页大小来达到SEO的目的,不过这个做法会使网页不符合W3C标准,可能达不到SEO的要求。

3、可以对User-Agent进行判定,如果不是特定语言(你的网站的主要语言)就加上广告,否则就去掉广告,这里有两种实现方法:

a)把 </body></html> 两个代码换成如下代码:

<script>

if(navigator.browserLanguage!=’zh-cn’)

document.write(‘</body></html>’)

</script>

这代表如果不是中文访问者,就加上</body>和</html>标签,显示广告。

b)更直接一点的:

在</body> 的前面加如下代码:

<i><script> </i>

<i>if(navigator.browserLanguage==’zh-cn’) </i>

<i>document.write(‘<noscript>’)</i>

这个表示,如果是中文访问者,就禁止执行广告脚本。

PS:这两种方法可以起到防止Kilu.de因为查出来禁用广告而删除帐号,因为Kilu.de的客户端语言肯定不是中文,只能是英文或者德文。

4、如果是服务器上只有单独的PHP文件,没有HTML,那么就这样:

在PHP结束前(就是?>前)加上:

if($_SERVER['HTTP_ACCEPT_LANGUAGE']!=’zh-cn’)

echo ‘</body></html>’;

或者:

if($_SERVER['HTTP_ACCEPT_LANGUAGE']==’zh-cn’)

echo ‘<noscript>’;

作用同上,只是换成了PHP版本。

5、对于某些整站程序,比如Discuz, wordpress 等,看似都是PHP,其实是有公共页脚的。

wordpress可以在wp-content/themes/your-theme/footer.php里添加(your0theme为当前主题)

discuz可以在templates/default/footer.htm里添加

discuz x可以在template/default/common/footer.htm里添加(admin.php,forum.php等文件都要做相同修改)

phpwind 可以在mode/area/themes/footer.htm里添加

dede cms 可以在templets/default/index_default.htm里添加(注意,这只是首页去广告,列表页,文章页都在这个目录,请自行修改)

6、利用.htaccess文件禁止广告

a)在.htaccess文件添加如下语句

php_value auto_append_file none

这个语句禁止了所有PHP模块自动加载文件,广告代码自然无法加载。(对于kilu.de无效,具体原因我不太清楚,如果有朋友弄清楚了这个,欢迎email我。)

b)在.htaccess 里添加以下语句:

LayoutIgnoreURI *.php

LayoutIgnoreURI *.htm

LayoutIgnoreURI *.html

LayoutIgnoreURI *.txt

PS:这个对于kilu.de空间也无效,而且会出现500错误。

利用.htaccess文件的方法适用于绝大多数支持.htaccess文件的空间,但是很容易被主机提供商查出来,很容易封帐号。

PS:这里告诉大家去广告的方法,并不是鼓励大家去广告,只是作为一种技术交流。免费主机提供商也要盈利,他们的收入来源就是广告,既然使用了别人的服务,就要遵守使用条款。

文章来源:王锐的博客

填写个人信息,赶快回复吧!