1 頁 (共 1 頁)

網站防拷

文章發表於: 2004年 6月 14日, 19:15
imported_hamlet
3招防拷 別想抄襲我的網頁
◎記者陳芸芸/專題報導

  全球資訊網WWW可說是二十世紀最偉大的發明之一,但隨著網路發展,隨意抄襲或惡意利用他人網站內容的情況比比皆是,不少網友都在問,到底有沒有辦法防止他人隨意抄襲呢? 網際網路以「分享」為本質,全世界數有以百萬、千萬計的網友,將自己的心血文章做成網頁,讓其他網友瀏覽分享,甚至下載存檔,慢慢觀賞,雖然這樣一來,知識的複製與流傳將更為快速便利,但相反地,部分不肖的網友,卻也得以因此隨意抄襲他人的心血,放在自己的網站上,甚至拿去牟利,常令原創者十分氣憤與無奈。

  事實上,複製網站上的資料十分容易,因為只要在瀏覽器上點選頁面,再執行複製與貼上的指令,別人花了幾個星期甚至幾個月才整理好的內容,抄襲者只要幾分鐘甚至幾秒鐘就可完成,站長們不禁要問,難道沒有辦法防止或減少情況嗎?答案是肯定的,最普遍也最容易的辦法就是加入javascript語言來控制網頁內容。

  為了防止有心人士的複製,網友需要擁有一定的HTML和javascript常識,但首先要了解,抄襲者是如何成功複製網頁的。

  一般來說,當一個網頁呈現出來時,如果瀏覽者想要複製其中的內容,通常會採取四個辦法,第一種是點選瀏覽器工具列「檢視╱原始檔」,直接將網頁的原始碼複製起來;第二種是在網頁上按滑鼠右鍵,在跳出來的選單上點選「檢視原始檔」,然後將原始碼存檔;第三種是點選瀏覽器工具列「檢視╱另存新檔」,然後將整個網頁存檔起來;第四種辦法是用滑鼠將想複製的部份或全部內容點選起來,然後貼到適當的應用程式(如Word或Front page)。

  基本上,想要防止他人複製網頁內容,就要防止使用者執行上述四種動作,由於上面四種拷貝辦法或者各自獨立,或者各有相關,所以我們先介紹幾種防止複製的javascript控制碼寫法,然後再交互援引參照。

  不少使用者看到喜歡的網頁內容或網頁設計,通常第一個下意識的動作就是去按滑鼠右鍵,並且點選「檢視原始檔」的功能,所以如果能夠讓滑鼠右鍵失效,就可以阻止許多複製的企圖。

 要防止別人用滑鼠右鍵看網頁原始碼,可在網頁原始碼<body>標籤的後面加入下面的JavaScipt碼:<scriptLanguage="javascript"><!--if(navigator.appName.indexOf("InternetExplorer")!=-1)document.onmousedown=SourceSecret;functionSourceSecret(){if(event.button==2|event.button==3)alert("請勿擅自複製本網頁的內容");}//--></script>這樣一來,當使用者企圖按右鍵檢視網頁原始檔時,就會跳出「請勿擅自複製本網頁的內容!」的警告文字,其他網友也就無法利用右鍵偷看你的原始碼了。
上述原始碼當中的「請勿擅自複製本網頁的內容!」這幾個字是可以替換的,網友可以把它換成自己中意的文字(例如「隨便抄襲別人的心血是不好的!」)。

 這種方法可以阻止大部分企圖抄襲網頁的人士,因為根據許多實證的例子,一旦意圖抄襲者發現右鍵無法作用,通常就會放棄抄襲動作。

  光是封鎖滑鼠右鍵,還是無法完全阻止網友偷看原始檔,因為一來滑鼠右鍵的鎖定有法可解,二來抄襲者還是可以透過工具列上的「檢視╱原始檔」或「檢視╱另存新檔」的功能來複製網頁或原始檔,因此我們還得進一步讓工具列上的這些功能失效才行。

  要做到這點,我們可以想辦法讓網友在開啟自己的網頁時,讓瀏覽器上的工具列消失,方法就是另外寫一個首頁B,讓首頁B的連結指向真正的首頁A。

  舉例來說,用戶的首頁A原本是http://www.geocities.com/hahahatest/之下的「index.html」,但是,我們現在要在「index.html」上偷天換日,把「index.html」變成中繼站,讓它指向真正的首頁「index2.html」。

 這種方法可以阻止大部分企圖抄襲網頁的人士,因為根據許多實證的例子,一旦意圖抄襲者發現右鍵無法作用,通常就會放棄抄襲動作。

  光是封鎖滑鼠右鍵,還是無法完全阻止網友偷看原始檔,因為一來滑鼠右鍵的鎖定有法可解,二來抄襲者還是可以透過工具列上的「檢視╱原始檔」或「檢視╱另存新檔」的功能來複製網頁或原始檔,因此我們還得進一步讓工具列上的這些功能失效才行。

 要做到這點,我們可以想辦法讓網友在開啟自己的網頁時,讓瀏覽器上的工具列消失,方法就是另外寫一個首頁B,讓首頁B的連結指向真正的首頁A。

 舉例來說,用戶的首頁A原本是http://www.geocities.com/hahahatest/之下的「index.html」,但是,我們現在要在「index.html」上偷天換日,把「index.html」變成中繼站,讓它指向真正的首頁「index2.html」。

 先把原本的「index.html」更改檔名成「index2.html」,然後「index.html」的寫法如下:<html><head><title></title></head><body><ahref="javascript://"onClick="window.open('http://www.geocities.com/hahahatest/index2.html','','history=no,resizable=yes,status=no,menubar=no,scrollbars=yes,toolbar=yes')">請按此進入首頁</a></body></html>
在上面這段原始碼中,最重要的指令就是「menubar=no」,這就是指讓新開視窗的工具列消失,這樣一來,當其他用戶點選時,所跳出來的網頁就是沒有工具列的,其他網友也就沒有辦法法檢視原始碼或另存新檔了。
當使用者將上述原始碼應用在自己的網站上時,其他的東西都可以照抄,不過請記得,http://www.geocities.com/hahahatest/index2.html這個位址要改成自己的真實首頁所在才行。

透過前兩種方式,應可大幅保護自己網頁原始碼,但還有一種情況是,抄襲者未必對網頁的原始碼感興趣,他想要複製的是網頁的文字或圖形,也就是用滑鼠將想複製的部份或全部網頁內容點選起來,貼到適當的應用程式去。
不過,還是可以想辦法讓其他人無法進行複製,而其步驟比前面兩種方式更簡單,只要在<body>標籤之內加入一串指令即可,範例如下:<bodytext=deeppinkoncontextmenu="returnfalse"ondragstart="returnfalse"onselectstart="returnfalse">。
這個辦法更簡單,可是功能更「直接有效」,因為它連警告視窗都沒有,而且無法採取任何滑鼠或鍵盤的動作,抄襲者甚至會覺得「是不是我的電腦壞掉了」。
 
不過,網友要注意的是,依目前的技術,網路上還是沒有辦法完全防止他人抄襲,任何網頁的保護方法,都還有漏洞可鑽,至於如何破解,這裡當然不能夠洩漏,不過,站長們只要善用上面所介紹的幾種方法,交互運用,雖然無法百分之百防止保證不被抄襲,但絕對可讓多數抄襲者知難而退。

文章發表於: 2006年 2月 6日, 10:17
ntiswssl
瀏覽器的暫存檔案也是一個漏洞,而且可以把完整的檔案都複製下來。