我有一個項目,我們正在創建一個基於html5的動態視頻播放器,並帶有一堆Ajax控件和功能。目的是這個播放器將被其他域使用。我們的老玩家使用閃光燈,可以很容易的域鎖,但現在有任何方法在HTML5中做域鎖定?HTML5域名鎖定?
請記住,這不僅僅是視頻本身,我們也希望爲我們的ajax控件加載html內容。似乎iframe是這個明顯的選擇,但是沒有辦法做域鎖定。
任何想法?
我有一個項目,我們正在創建一個基於html5的動態視頻播放器,並帶有一堆Ajax控件和功能。目的是這個播放器將被其他域使用。我們的老玩家使用閃光燈,可以很容易的域鎖,但現在有任何方法在HTML5中做域鎖定?HTML5域名鎖定?
請記住,這不僅僅是視頻本身,我們也希望爲我們的ajax控件加載html內容。似乎iframe是這個明顯的選擇,但是沒有辦法做域鎖定。
任何想法?
你可以使用上面的函數,但它很明顯它在做什麼,所以任何人都可以刪除域鎖。
那裏有服務,將您的網頁鎖定到域名,我知道兩個我的頭頂。
jscrambler.com - 這是一個付費工具,但如果您只想鎖定您的域名,它可能有點矯枉過正。
jslock.it - 這是一個免費的域名鎖定工具,我在幾乎所有的網絡項目中都使用它。
嘗試閱讀REFERER標題,如果該網站未列入黑名單,則不要顯示播放器。
我來到這裏尋找同樣的事情。但我認爲我有一個解決的辦法。 我發現sofar的最佳方式是去掉其http://的location.href,然後檢查白名單域的前幾個字符。所以:
if(checkAllowedDomains())
{
initApplication();
}
else
{
// it's not the right domain, so redirect them!
top.location.href="http://www.snoep.at";
}
function checkAllowedDomains()
{
var allowed_domains=new Array();
allowed_domains.push("www.snoep.at");
allowed_domains.push("www.makinggames.nl");
allowed_domains.push("www.google.com");
// add whatever domain here!
var domain=top.location.href;
domain.replace('http://','');
var pass=false;
for(i=0;i<allowed_domains.length;i++)
{
var shortened_domain=domain.substr(2,allowed_domains[i].length);
if(shortened_domain.indexOf(allowed_domains[i])!=-1)
{
pass=true;
}
}
}
這段代碼檢查幾個allowed_domains,你可以很容易地擴展陣列。 這是代碼的問題,它非常易讀。所以,我建議你通過一個js-minimizer來使其不那麼明顯,並將其包含在頁面上的每個js中。 InitApplication()是一個啓動頁面或應用程序的函數。因爲您將http://(可能不存在或不存在)的位置去掉,然後僅檢查允許的域的特定長度(包括WWW!),您排除了可能看起來像子域的子域像這樣:google.com.mydomain.com並扔掉支票!
希望這會有所幫助。
請在此上下文中定義「域鎖定」。這可能意味着幾件事情...... – DaveRandom 2012-01-17 18:23:22
您發佈到「wild」的HTML和JS將始終被讀取並進行反向工程 - 因爲與flash不同的源代碼處於非常可讀的視圖。即使是YouTube視頻,無論他們如何隱藏網址以及其他參數,視頻網址仍然被螢火蟲等工具捕獲。 – Joseph 2012-01-17 18:27:06
http://stackoverflow.com/questions/958997/frame-buster-buster-buster-code-needed – c69 2012-01-17 18:28:01