0

N個のクライアントからのマーケティングデータに相当するものを集約している状況があります。クライアントは、任意のバックエンドを使用してHTMLフォームをホストでき、フォームのアクションはそれぞれ、私たちがいるパスを指します。ホスティング。クライアントごとに異なるURLがあり、認証はありません(ただし、データの簡単な検証がいくつかあります)。通常、すべて正常に機能しています。

ただ、頭が回らないような小さなシワが1つあります。

送信されたデータを処理しているaspxはパスにあり、〜/ submit/default.aspxと呼びましょう。フォームのアクションとして、 「 http://sample.com/submit/?foo=bar 」の行に沿ってURLをパートナーに渡すことができるはずです。ただし、これを行うと、「リソースが許可されていません」というHTTP405エラーが発生します。

ただし、フォームのアクションを「http://sample.com/submit/default.aspx 」に設定すると、問題なく機能します。

  • Default.aspxは、IIS6のデフォルトのドキュメント名の1つとして設定されています。
  • .aspxファイル拡張子は正しい.Netdllに適切にマッピングされ、マッピングのために動詞GET、HEAd、POST、およびDEBUGがアクティブ化されています。

最初に再確認するために私が考えることができたのは、これらの2つだけでした。他に何かアイデアはありますか?IIS7でURLの書き換え/ルーティングを使用することをお勧めしますが、残念ながらそれはオプションではありません。また、「クリーンな」URLが非常に望ましいという追加の要件がいくつかあるため、この問題を解決するのはかなり難しいでしょう。解決すべきコアの問題。

4

3 に答える 3

1

IIRC、IISは、要求されたリソースがディレクトリである場合にのみデフォルトのドキュメントを使用します。最初のケースで要求されたリソースはそうではないため、デフォルトのドキュメントハンドラーを通過することはありません。代わりに、未登録のスクリプト拡張機能(405)へのPOSTに失敗します。

于 2009-01-31T00:38:54.480 に答える
0

何らかの理由で、コード サンプルがレンダリングされませんでした!! 「あなたの答え」テキストボックスの小なり記号と大なり記号をデコードしてエンコードする必要があります....とにかく、

<httpHandlers>
<add verb="your.class.to.handle.doc.files"/>
</httpHandlers>

web.config ファイルにあるはずのものです。

于 2010-03-09T22:25:53.113 に答える