怎么让别人看不到网页源代码(3)

时间:2008-03-21 13:06:00 

中级深入篇

上篇中是采用JavaScript技术达到保护在线网页的目的.正所谓"强中自有强中手",有些人使用Webzip,TelePro,Offline等离线浏览器下载你的主页,就可绕过JavaScript保护在线网页的防线,将网页下载后再慢慢剖析.有矛必有盾,你亦可用JavaScript建立的动态转向文件是大多数离线浏览器无法下载你的网页,方法如下.你可将上例中的被保护页面更名为index1.html,而将文件index.html改为以下代码:

<script>  
window.location.replace(\'index1.html\') //本句产生网页跳转功能  
</script>

对Internet Explorer5新增的离线浏览功能(脱机工作),以上方法有时失灵,可通过对网页设置cookie的高级技术达到保护的目的.一旦cookie超期,即使网页已被下载到本机也无法浏览,呵呵,厉害吧:)

应加入文件中的cookie代码段如下: 

<script language="JavaScript">  
function getCookieVal (offset)  
{  
var endstr = document.cookie.indexOf (";", offset);  
if (endstr == -1)  
endstr = document.cookie.length;  
return unescape(document.cookie.substring(offset, endstr));  
}  
function GetCookie (name)  
{  
var arg = name + "=";  
var alen = arg.length;  
var clen = document.cookie.length;  
var i = 0;  
while (i < clen)  
{  
var j = i + alen;  
if (document.cookie.substring(i, j) == arg)  
return getCookieVal (j);  
i = document.cookie.indexOf(" ", i) + 1;  
if (i == 0)  
break;  
}  
return null;  
}  
function SetCookie (name, value)  
{  
var argv = SetCookie.arguments;  
var argc = SetCookie.arguments.length;  
var expires = (2 < argc) ? argv[2] : true;  
var path = (3 < argc) ? argv[3] : true;  
var domain = (4 < argc) ? argv[4] : true;  
var secure = (5 < argc) ? argv[5] : true; //安全模式生效  
document.cookie = name + "=" + escape (value) +  
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +  
((path == null) ? "" : ("; path=" + path)) +  
((domain == null) ? "" : ("; domain=" + domain)) +  
((secure == true) ? "; secure" : "");  
}  
function ResetCounts(name)  
{  
visits = 0;  
SetCookie(expdate , "/", true, true);  
location.reload();  
}  
</script>  
<script language="JavaScript">  
var expdate = new Date();  
var visits;  
expdate.setTime(expdate.getTime() + (24*60*60 * 1000)); //COOKIES超期时间设置,此处为1天  
if(!(visits = GetCookie("visits")))  
visits = 0;  
visits++;  
SetCookie(expdate, "/", true, true);  
</script>

 如果你已经做到这一步了,那么你的网页所受到的保护就不再是常规意义上的出于道德观念或版权意识,而是真正的技术上的保护手段.

高级研究篇

对网页的保护并不仅仅是涉及源代码的保护,更应该包含对网页数据或网络数据库的保护.对网络数据库的保护可采用基于IIS的CGI接口的认证程序,SQL的安全技术,ASP安全认证程序,Java Applet安全认证程序等手段,属于更高层次的安全措施,包含大量内容,本文不作介绍.本篇将介绍应用JavaScript技术构造的页面认证接口.将仅供有限人群访问的需要数据保护的页面中加入以下代码:

<script LANGUAGE="JAVASCRIPT">  
<!--  
loopy()  
function loopy() {  
var sWord =""  
while (sWord != "hibow") {  
sWord = prompt("输入正确密码登陆! ")  
}  
alert("身份识别......允许登陆")  
}  
//-->  
</script>

注意:嵌入式的 JavaScript代码应加在原文件的<head></head>元素区内.
代码中字段sWord的值hibow为登陆被保护页面的密码.你可将自定义的密码告诉允许访问该页面的用户,仅当密码被正确输入后浏览者才可看见页面内容,否则将循环停留在密码登入框中(见图2),进不去喽J

为了达到保护页面源代码及数据的最佳效果,可将本文介绍的所有方法相结合

这样是锁不住代码的,只要先点左健不放,再点右健,在放左建,就能看了。如果你的主页是用ASP,PHP,或者CGI购建的,一般对方是看不到源代码的。防右键的方法已经过时了还有一个办法就是把回车全去掉,把整个文件压缩。 这样看到也看不清楚, 还不影响动行。

标签:源代码,禁止,网页,js
0
投稿

猜你喜欢

  • 自定义404错误页面实现自动跳转

    2007-12-10 18:25:00
  • 编写一个JS组件来说说call和apply的用法

    2008-11-23 17:11:00
  • css学习笔记:为什么在IE6下图片会往下掉一行

    2009-06-19 12:50:00
  • MySQL高级查询方法之记录查询

    2010-06-20 14:48:00
  • firebug1.7调试实用技巧指南

    2011-06-27 20:17:22
  • mysql 各种时间段查询

    2010-01-06 13:37:00
  • XPath 11个实例

    2008-09-05 15:06:00
  • 网页版面布局的方法及技巧

    2007-10-29 12:41:00
  • SQL触发器在保持数据库完整性中的实际应用

    2009-10-23 14:34:00
  • Mootools 1.2教程(22)——同时进行多个形变动画

    2008-12-29 14:11:00
  • oracle chm帮助文件下载

    2010-07-16 12:49:00
  • SQL查询重复记录

    2011-03-27 09:06:00
  • 王孟友教你如何设计标志(LOGO)

    2008-04-17 13:30:00
  • Sqlserver 2000/2005/2008 的收缩日志方法和清理日志方法

    2012-07-21 14:55:18
  • ASP实现控制虚拟主机功能的函数ADSI

    2008-10-12 13:12:00
  • 用私有属性来拯救IE7缩放图片的失真

    2009-03-03 13:57:00
  • SQL Server 查询分析器快捷键集合

    2007-08-17 09:42:00
  • 正则表达式不匹配某个字符串

    2010-03-02 22:08:00
  • Asp中如何设计跨越域的Cookie

    2008-10-24 09:46:00
  • 浅谈LogMiner的使用方法

    2009-02-28 11:12:00
  • asp之家 网络编程 m.aspxhome.com