0

私は DNN ポータルでホスティングと開発を行っています。クライアント IP を使用してユーザーをリダイレクトする必要があります。この作品には2つのアイデアがあると思います。

1- DNN 設定

おそらく、DNN には、クライアント IP アドレスに特定の URL を設定し、特定の URL に自動的に DNN リダイレクトを設定できる設定があります。

多くのトピックを読みましたが、それを行うための設定が見つかりませんでした。

これを行う方法はありますか?

2- 新しいモジュール

私はascxそのonloadメソッドにこのコードがあります:

var IP = Server.HtmlEncode(Request.UserHostAddress).ToString();         
using (Entities db = new Entities())
{
    var retVal = db.URLAddresses.Where(u => u.IPAdress == IP).FirstOrDefault();
        if (retVal != null)
            Response.Redirect(retVal.URL);
}

ただし、クライアント IP を使用してリダイレクトするには、このコードを ascx に追加する必要があります。ソースコードモジュールがない可能性があるため、これは不可能です。

新しいモジュールを作成する必要があると思います。だから私はそれをページに追加することができます。モジュールはonloadページを変更し、クライアント IP を使用して URL にリダイレクトします。

onloadこのシナリオでは、新しいモジュールを作成しようとしましたが、モジュールが追加されたページごとにメソッドを変更する方法がわかりません。

4

2 に答える 2

1

IHttpModule を使用して、クラスをインクルードするための新しいモジュールを作成してから、 IHttpModule を web.config に追加する必要があります。例えば

      <add name="YourModule" type="YourAssembly, YourNameSpace" preCondition="managedHandler" />

このサイトを参照してください: HTTP ハンドラーと HTTP モジュールの概要 およびASP.NET HTTP モジュールの作成方法

于 2016-11-08T08:45:56.010 に答える