網站修改了document.domain的投放方案
如果網站修改了document.domain,投放廣告的站點需要引入一個名稱為跨域策略文件的頁麵,並使得JS可以準確調用到該頁麵。
跨域策略文件是一個標準的html頁麵,其內容如下所示:
<!DOCTYPE html>
<meta http-equiv="Cache-Control" content="max-age=8640000" />
<script>
document.domain = '**.com';
</script>
請將上述代碼中的document.domain的值修改為與投放廣告的頁麵一致的domain值,然後將代碼保存為domain-policy.htm(文件名及後綴不可更改),並存放在網站服務器上投放廣告管家代碼的所有子域的根路徑下,即/domain-policy.htm,保證各個子域下均可以正常訪問到即可。例如投放廣告的子域是sports.abc.com,則要保證通過https://sports.abc.com/domain-policy.htm這個URL可以訪問到跨域策略文件;投放廣告的子域是www.abc.com,則要保證通過https://www.abc.com/domain-policy.htm這個URL可以訪問到跨域策略文件。
注:1、domain-policy.htm文件內容使用了最簡化的跨域策略文件的書寫格式,並開啟了時長100天的緩存,以減小因為該文件的讀取對網站服務器產生的壓力和以廣告展現速度的影響。2、在跨域策略文件中,關鍵的部分是一個<script>標簽,其中需要將投放廣告的頁麵的修改document.domain部分的代碼複製過來,保持其完全一致。例如在頁麵上將document.domain修改為abc.com,則在跨域策略文件中,也需要修改為abc.com,必須保持一致。
………………………………………………………………………………………………………………………………
如果您不希望放在根目錄下,請采用以下方式:
您可以將跨域策略文件放置在服務器上其他位置,保證該文件可以正常訪問,隨後在投放廣告時,通過js函數進行相應的配置,即可實現廣告的正確展現,具體方法如下:
對於兩段式JS,投放的配置是通過BAIDU_CLB_setConfig函數來完成的,調用形式如下:
<script>
BAIDU_CLB_setConfig('domainPolicyFileUrl', 'https://www.abc.com/1/domain.htm');
</script>
<script>
BAIDU_CLB_fillSlot('1234567');
</script>
需要注意以下幾點:
· BAIDU_CLB_setConfig必須在投放第一個廣告位代碼之前調用。
· BAIDU_CLB_setConfig的第一個參數為domainPolicyFileUrl,不可修改。
· BAIDU_CLB_setConfig的第二個參數為跨域策略文件的訪問地址,可以使用絕對路徑或相對路徑。
對於一段式JS,可以使用BAIDU_CLB_domainPolicyFileUrl全局變量來配置跨域策略文件地路徑,調用形式如下:
<script>
BAIDU_CLB_domainPolicyFileUrl = 'https://www.abc.com/1/domain.htm';
</script>
<script>
BAIDU_CLB_SLOTID = '1234567';
</script>
<script src="https://cbjs.baidu.com/js/o.js"></script>
最後更新時間:2011-12-29 11:34:11
最後更新:2017-01-07 09:51:28