3


英語でごめんなさい。
奇妙な問題があります。ユーザーがアドワーズリンクをクリックすると、GoogleはそのようなトラッキングCookieを書き込みます 1813234232.1302674912.30.51.utmgclid=CcgezrsXjagCFcs-zAod_h2oCQ|utmccn=(not set)|utmcmd=(not set)|utmctr= CAA:89 AB0=40@B%20>:
キーワードセクション(utmctr)に不正な括弧があり、リクエスト検証の例外が発生します
A potentially dangerous Request.Cookies value was detected from the client (__utmz="...0=40@B%20> at System.Web.HttpRequest.ValidateCookieCollection(HttpCookieCollection cc)

リクエストの検証をオフにせずにこの問題を解決する方法はありますか?

編集 私はおそらく明白な解決策を見つけました:独自のリクエスト検証モジュールを書くhttp://jefferytay.wordpress.com/2010/04/15/creating-your-own-custom-request-validation/

4

1 に答える 1

0

既定では、asp.netはデータを検証し、潜在的な攻撃がないかチェックします。

この自動検証を無効にするvalidateRequest="false"には、ページでエーテルを設定します

<%@ Page validateRequest="false" %>

すべてのページに影響するweb.configのether。

<configuration>
  <system.web>
    <pages validateRequest="false" />
  </system.web>
</configuration>

その後、自分でチェックする必要があると思うのは、誰かがスクリプトデータを入力に入力したかどうかだけです。次に、入力をページにレンダリングするとき、およびデータベースに入力するときに、入力をチェックアウトする必要があります。

于 2011-04-08T16:05:01.203 に答える