0

共有ホスティング環境でホストされているサイトがあります。彼らはワイルドカードサブドメイン設定を使用し、Response.Redirectを使用してサブドメインの錯覚を実現することを提案しています。

最初にブラウザに戻るのではなく、サーバー上で「切り替え」が行われるようにこれを行う方法はありますか?

Server.Transferは、実際のリソースに転送する場合にのみ機能します。したがって、sub1.mydomain.comからwww.mydomain.com/public/へのリダイレクトは機能しません。代わりにwww.mydomain.com/public/mypage.aspxにリダイレクトする必要がありますが、これはやりたくないことです。

4

1 に答える 1

0

サーバー上で「切り替え」が確実に行われるようにするには、単純な HTTP モジュールを作成して各リクエストをインターセプトし、リクエストされた URL を検査して、必要に応じて転送することができます。モジュールが行う必要があるのは、OnBeginRequest イベントを処理してから、要求を転送することだけです。このようにして、本当に無制限のサブドメインを持つことができます.

また、空のホスト ヘッダーを追加して、リストされていないサブドメインへのリクエストが適切なデフォルト Web サイトに転送されるようにすることもできます。

モジュールに慣れていない場合でも、モジュールの作成と操作は非常に簡単です。Brendan Tompkins による非常によく似た実装へのリンクを次に示し ます。

特定の URL の「外観」動作が必要な場合は、モジュールで URL の書き換えを行うこともできます。

于 2009-11-28T16:04:52.943 に答える