nginx_proxy - 請教大神:PHP或Nginx如何在301重新導向中偽造referer?

來源:互聯網
上載者:User
需求是這樣的,使用者訪問a.com時將其重新導向到b.com,同時不能讓b.com通過referer檢測到使用者是從a.com過來的。
請問大神這樣的功能能否實現?

回複內容:

需求是這樣的,使用者訪問a.com時將其重新導向到b.com,同時不能讓b.com通過referer檢測到使用者是從a.com過來的。
請問大神這樣的功能能否實現?

思路就不對。
不管你是PHP的重新導向,Nginx的重新導向,甚至前端JS的重新導向。
都無所謂。。。。。。

最後都是瀏覽器執行重新導向的操作的

Referer或者Origin之類的參數,是瀏覽器加上去的。
要看具體瀏覽器的具體情景,不同的瀏覽器表現完全不一樣(或者說,基本無法預測和控制)。

Update:
有看到一些其他的思路,不過都有局限,也沒什麼保證,可以參考
http://segmentfault.com/q/1010000000123441

試試把a.com做成https

重新導向的地址歸根還是瀏覽器去執行了,樓主可以做個中轉,a.com重新導向到c.com,再重新導向b.com

referer是瀏覽器發出的,不是nginx和php所能決定的

後台方案:通過proxy,對b.com做一個透明代理。
前台方案:通過js,或者連結
如果你是在某個網站比如A.com,有個連結點擊之後進入b.com,然後要消除refer,把連結改成下面這樣子:

xxxfunction noreferclick(o){    var b,e,c,g,d,f,h;b=$(o);c=b.attr("href");            e="";        if($.browser.webkit){        b.attr("rel","noreferrer");        return true;    }    var userAgent = navigator.userAgent.toLowerCase();     if(userAgent.indexOf("firefox")!=-1){        if(b.attr("added")){            return true;        }        else{            h="data:text/html;charset=utf-8,"+encodeURIComponent(e);            b.attr("added",1);            b.attr("href",h);            return true;        }            }    else{        var a=b.attr("target")||"_self";                switch(a){            case "_self":            case window.name:                a=window;                break;            default:                a=window.open(null,a);                break;                        }        a=a.document;        a.clear();        a.write(e);        a.close();        return false;    }}

大部分瀏覽器適用。
如果不是,比如c.com點選連結到a.com,然後轉b.com,只有a.com是可控的。參考上面的點擊操作做個js跳轉。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.