8

私のソフトウェアの 1 つを販売する Java EE プラットフォームを使用して Web アプリケーションを構築しました。

今、私は自分のウェブサイトをさまざまな e マーケティング会社にマーケティングする仕事を与えたいと思っています。しかし、私は彼らにコミッションを与えなければならないので、誰がトラフィックを送信したかを知る必要があります.

上記の問題に対する1つの解決策は次のとおりだと思います。

e マーケティング会社ごとに個別の URL を作成し、対応する URL を提供して、それらすべての URL を 1 つの にリダイレクトしますServlet。その後、いいえを数えます。特定の URL (e マーケティング会社の URL) への訪問者の数をカウントします。その e マーケティング会社から紹介された訪問者の数。

およびさまざまな他のGoogleものは、他のものと区別する同様の種類の技術を使用しています。

Q1. それらのすべてがこの種のアプローチを使用していますか?

Q2. これをより良い方法で行うことができる他のアプローチはありますか?

他にも色々とアドバイス頂け...

前もって感謝します

4

7 に答える 7

2

クエリ文字列パラメーターも使用できます。(これは krassib が言及していたものかもしれません。) http://yoursite.foo/yourpage.jsp?affiliateid=ABC123のように

次に、その単一のページで URL からクエリ文字列を解析し、それを保存/カウントします。

于 2010-03-02T16:08:51.153 に答える
1

はい、もう1つあります。アンカー方式を使用できます。説明させてください:

http://myappz.com/fooshop_csこれが販売商品のURLであり、これがアフィリエイトに配布するものであると想像してください。ただし、それぞれにわずかな違いがあります。フラグメント識別子をハイジャックすることで、URLに一意のIDを追加するだけです(つまりhttp://myappz.com/fooshop_cs#em001)。

ユーザーが一意のIDで課金されているサイトへのリンクをたどると、Javascript()を使用してIDの存在を確認しますlocation.href.search(/#em\d*/)。IDを見つけたら、AJAX呼び出しをトリガーして、そのアフィリエイトをワンランク上に上げます(jQueryフレームワークをお勧めします)。

このアプローチの利点は、検索エンジンがフラグメントIDを気にせず、単一のページから製品を販売できることです。アンカーはユーザーにまったく影響を与えないため、ユーザーも気にしません(ページ内にアンカータグを設定する場合を除く)。

さよなら

于 2010-03-05T21:42:21.513 に答える
1

はい、@krassib と @TomR に同意します。queryString パラメータを使用すると、サーブレット フィルタを記述して特定のパラメータをチェックし、そのアフィリエイトのカウントを増やすことができます。サーブレット フィルターを使用すると、アフィリエイトごとに個々のリンクの数を追跡できるという追加のボーナスも得られます。

次のようなことを行います。

import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class AffiliateTrackingFilter implements Filter {
    private AffiliateTrackingService affiliateTrackingService = null;

    @Override
    public void destroy() {
    }

    @Override
    public void doFilter(ServletRequest rq, ServletResponse rs,
            FilterChain chain) throws IOException, ServletException {
        String affililateId = rq.getParameter("affiliateId");
        affiliateTrackingService.incrementAffiliateHit(affililateId);
        chain.doFilter();
    }

    @Override
    public void init(FilterConfig fc) throws ServletException {
        affiliateTrackingService = new AffiliateTrackingService();
    }
}

次に、次のようなものをweb.xmlに追加します。

<filter>
    <filter-name>AffiliateTrackingFilter</filter-name>
    <filter-class>com.example.AffiliateTrackingFilter</filter-class>
</filter>

<filter-mapping>
    <filter-name>AffiliateTrackingFilter</filter-name>
    <servlet-name>MyMainServlet</servlet-name>
</filter-mapping>

また、すべてのサーブレットにフィルター マッピングを設定します。

于 2010-03-05T10:45:12.233 に答える
1

フラグメント識別子に関する aefxx の回答については、このアプローチの利点は SEO ランクを維持することだと思います。その場合でもクエリ文字列でこれを管理できますが、Google ウェブマスター ツールで無視するように設定する必要があります。Bing とおそらく Yahoo も同様のメカニズムを持っていると思います。そうすれば、引き続きクエリ文字列に基づいて追跡できます。実際、必要に応じて、カスタマイズせずに Google アナリティクス (フラグメント識別子を追跡しない) で追跡することもできます。

于 2012-12-05T16:22:48.147 に答える
1

私の知る限り、3つの可能性があります:

  1. おっしゃる通り、各社固有のURLで、
  2. 訪問ユーザーが入力する必要がある「クーポンコード」を使用します。訪問者には少し迷惑ですが、このようなものを見たことがあります。
  3. 最後に、あなたが言及した会社にウェブサイトがあり、そこからあなたのサイトへのリンクを張っている場合にのみ機能します:リファラーURLを取得することによって

私の意見では、最良の選択肢は最初の選択肢です。これがおそらく、これが最も広く使用されている/知られている理由です。

おそらく、Cookie を実装して、訪問者がどの会社から来ているかを「記憶」することをお勧めします。これにより、最初の訪問で何も購入することを決めなかった訪問者が戻ってきて何かを購入したときに、どの会社が紹介したかがわかります。あなたのサイトを彼らに。

于 2010-03-01T06:39:13.523 に答える
0

すでにあるものを使用しないのはなぜですか?HTTP プロトコルとそのヘッダー フィールドの 1 つであるリファラー (通常、環境変数 HTTP_REFERER または HTTP_REFERRER でコードに渡されます) について話しています。

100% の防弾ではありませんが (しかし、100% の防弾とは何ですか?) あなたの場合はそれで十分だと思います。アフィリエイトに関連付けられているあなたの顧客は、そのサイトの 1 つから参照されていると思いますか? もしそうなら、それぞれが独自のドメイン名を持っているはずなので、異なる e マーケティング会社から来た顧客を簡単に区別できます。

Referrer フィールドの詳細をお読みください。ただし、リファラーのなりすましや隠蔽は可能ですが、その可能性は非常に低いことに注意してください (私のサーバーのログファイルを調べると、リファラー フィールドを送信するすべての訪問者の推定 95% です)。

よろしく。

于 2010-03-05T20:58:09.280 に答える
0

前の回答とほぼ同じです。各アフィリエイト Web サイトに、送信する一意のキー (URL 内) を与えることができます。サーバー アプリケーションは、アフィリエイト Web サイトのリストに対してキーを (解読して) 照合し、リードの発信元をカウントします。

于 2010-02-23T00:13:49.363 に答える