0

単一のホスティングにリダイレクトされる 5 つのドメインがあります。バナーに問題がある Web サイトで Joomla を使用しています。誰かがドメイン 1 からリダイレクトされた場合、ホスティング サイトにドメイン 1、ドメイン 2、バナー 2 などのバナーが表示されるようにします。

JoomlaでもCore PHPでも、最良の方法論は何でしょうか?

4

2 に答える 2

1

'HTTP_REFERER'PHP の$_SERVERスーパーグローバルで使用する必要があります。詳細については、マニュアルを参照してください

基本的に、HTTP_REFERERホストに向けられたサイトの URI が含まれます。実際に値が含まれているとは限りませんがGET、URL で発行された変数を使用しないことをお勧めします。注: ドメイン名を使用するには、ドメイン名を解析する必要があります。

説明書にはこう書いてあります...

ユーザー エージェントを現在のページに参​​照させたページ (存在する場合) のアドレス。これは、ユーザー エージェントによって設定されます。すべてのユーザー エージェントがこれを設定するわけではなく、機能として HTTP_REFERER を変更する機能を提供するユーザー エージェントもあります。要するに、本当に信用できない。

コードは次のようになります...

function GetBannerForDomain() {
    $url_array = parse_url($_SERVER['HTTP_REFERER']);
    switch (str_replace("www.", "", $url_array['host')) {
        case 'example.com':
            $img_src = 'path/to/banner.png';
        default:
            $img_src = 'path/to/default/banner.png';
    }

    return $img_src;
}

リダイレクトするドメインを制御できる場合は、リダイレクトで GET 変数を使用するようにフォールバックできます...

http://www.yoursite.com/referer/site1.com
于 2012-12-22T07:22:20.217 に答える
0
function getBannerSrc() {
    switch ($_SERVER['HTTP_REFERER']) {
        case 'example.com':
            $img_src = 'path/to/banner.png';
        default:
            $img_src = 'path/to/default/banner.png';
    }

    return $img_src;
}

...次に、ビュースクリプトで

<img src="<?php echo getBannerSrc(); ?>">

もしかしてそういうこと?

于 2012-12-22T07:21:25.007 に答える