溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

360搜索引擎so自動收錄php改寫方案——適合phpcms等cms

發(fā)布時間:2020-07-24 20:45:44 來源:網(wǎng)絡(luò) 閱讀:1015 作者:周陸軍 欄目:web開發(fā)

360搜索引擎自動收錄功能,官方提供了代碼,帶式,十分坑爹,沒有提供批量提交入口,只是提供了一段js代碼,關(guān)鍵是 一個js去下載另外一個js,document.write到文檔,然后再 重復(fù)2遍如此工作。

弱弱地問:為什么不像百度一樣提供 批量提交入口?

難道是,靠這個自動提交功能,搜集網(wǎng)站的數(shù)據(jù),比如document.refer等數(shù)據(jù)?這個也是比較流氓了吧?

據(jù)說360的搜索引擎目前在中國 市場占有率為20%以上,不知道真假,本人是十分懷疑的!

起碼本人基本只用谷歌!奈何在天朝還是基本用百度,小白還是太多太多的!

只好忍了,加360的自動收錄吧!

于是對代碼進行一番改造!

官網(wǎng)的原始代碼如下:

<script>(function(){
var src = (document.location.protocol == "http:") ? "http://js.passport.qihucdn.com/11.0.1.js?970506d365e969bd0e92a2611c18678e":"https://jspassport.ssl.qhimg.com/11.0.1.js?970506d365e969bd0e92a2611c18678e";
document.write('<script src="' + src + '" id="sozz"><\/script>');
})();


http://js.passport.qihucdn.com/11.0.1.js?970506d365e969bd0e92a2611c18678e

document.write('<script charset="utf-8" src="http://s7.qhres.com/static/ab77b6ea7f3fbf79.js"></script>')

http://s7.qhres.com/static/ab77b6ea7f3fbf79.js

官網(wǎng)提供的代碼進過二次方document.write的代碼如下,這個js的代碼如下:

(function (e) {
    function t(e) {
        var t = location.href, n = t.split("").reverse(), r = e.split(""), i = [];
        for (var s = 0, o = 16; s < o; s++)i.push(r[s] + (n[s] || ""));
        return i.join("")
    }

    var n = /([http|https]:\/\/[a-zA-Z0-9\_\.]+\.so\.com)/gi, r = e.location.href;
    if (r && !n.test(r) && window.navigator.appName) {
        var i = "//s.#/so/zz.gif", s = document.getElementById("sozz"), o = s.src.split("?")[1], u = t(o), a = new Image;
        r && (i += "?url=" + encodeURIComponent(r)), o && (i += "&sid=" + o), u && (i += "&token=" + u), o && (a.src = i)
    }
})(window);

分析發(fā)現(xiàn)

最終目的還是 img 請求提交,尼瑪,于是,改造如下:

在phpcms v9的 phpcms/libs/functions/ 目錄下,找到 extention.func.php 文件,添加如下代碼:

/**
 * 360推送 @www.zhoulujun.cn

 */
function getPushSoUrl($url){
    $token="970506d365e969bd0e92a2611c18678e";
    return $str="https://cache.yisu.com/upload/information/20200310/52/107046.jpg?url=".urlencode($url)."&sid=". $token."&token=".getPushToken($url,$token);
}
function getPushToken($url,$o){
    $n = str_split($url,1);
    $n=array_reverse($n);
    $r = str_split($o,1);
    $i=[];
    for($s=0,$o=16;$s<$o;$s++)
    {

        array_push($i,empty($n[$s])?$r[$s]:$r[$s].$n[$s]);
    }
    return implode($i);
}
/*
class push_so_url{
    private $token="970506d365e969bd0e92a2611c18678e";
    public  function setToken($token){
        $this->token=$token;
    }
//    function __construct($token) {
//        $this->token=$token;
//    }
    public function getPushToken($url,$o){
        $n = str_split($url,1);
        $n=array_reverse($n);
        $r = str_split($o,1);
        $i=[];
        for($s=0,$o=16;$s<$o;$s++)
        {

            array_push($i,empty($n[$s])?$r[$s]:$r[$s].$n[$s]);
        }
        return implode($i);
    }
    public function getImgUrl($url){
        return $str="https://cache.yisu.com/upload/information/20200310/52/107046.jpg?url=".urlencode($url)."&sid=". $this->token."&token=".$this->getPushToken($url,$this->token);
    }


}
*/

在 模板 phpcms/templates/default/content/  比如show index 添加如下代碼:

<img src="{getPushSoUrl($_SERVER['HTTP_HOST'].$url)}">

okay,驗證下

和js的效果是一樣的。

手工,不知道官方對此方案態(tài)度如何,目前還沒有收到回復(fù),郵寄給官方發(fā)過郵寄和論壇、知乎都提問,無人問津啊

先干了再說吧!


轉(zhuǎn)載請注明來源:

周陸軍的個人網(wǎng)站-360搜索引擎so自動收錄php改寫方案——適合phpcms等cms

http://www.zhoulujun.cn/zhoulujun/html/Operation/seo/2018_0426_8102.html



向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI