无法从$ _SERVER ['HTTP_REFERER']

时间:2019-04-24 09:56:36

标签: php http http-referer

我正在尝试从Google,Bing和Yahoo等搜索引擎获取查询字符串,以将其存储在我的数据库中,并在该特定页面上显示用于在搜索引擎中获取我的网站的关键字。

我检查了PHP的每个全局变量($ _SERVER,$ _ REQUEST,$ _ POST,$ _ GET,$ _ GLOBAL和$ _COOKIE),但是找不到所需的数据。

我要在“ {https://www.bing.com/search?q=bill+hicks+sporting+goods+wholesale&qs=n&form=QBLH&sp=-1&pq=bill+hicks+sporting+goods+wholesale&sc=2-35&sk=&cvid=9E5D9E7C0B5B4740A42B5758CCE510D0”中添加“帐单+臀部+体育+商品+批发”

以下代码之前曾起作用,但现在所有搜索引擎都已停止在HTTP_REFERER中发送查询字符串。

function get_search_query() {
    $ref_keywords = '';
    // Get the referrer to the page
    $referrer = $_SERVER['HTTP_REFERER'];
    if (!empty($referrer))
    {
        //Parse the referrer URL
        $parts_url = parse_url($referrer);
        // Check if a query string exists
        $query = isset($parts_url['query']) ? $parts_url['query'] : '';
        if($query)
        {
            // Convert the query string into array
            parse_str($query, $parts_query);
            // Check if the parameters 'q' or 'query' exists, and if exists that is our search query terms.
            $ref_keywords = isset($parts_query['q']) ? $parts_query['q'] : (isset($parts_query['query']) ? $parts_query['query'] : '' );
        }
    }
    return $ref_keywords;
}

来自https://www.virendrachandak.com/techtalk/get-search-query-string-from-search-engines-using-php/的代码

0 个答案:

没有答案