問題タブ [isapi-extension]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iis-7 - IIS7 で ISAPI 拡張により 404 が返される
Windows 7 64 ビットを実行していて、ISAPI 拡張機能をロードしようとしています。ローカル IIS7 マシンでの書き込みに忙しいです。
- 「ISAPI と CGI の制限」の下の DLL に場所を追加しました。
- アプリケーション プールに 32 ビット アプリケーションを認識させました (拡張機能は Delphi で記述されています)。
- 「Everyone」がディレクトリ/dll に対して完全な権限を持っていることを確認しました
- 「ハンドラーマッピング」セクションでISAPI-dllを「許可」し、「読み取り/スクリプト/実行」権限に設定したことを確認しました
IIS7 で 404.0 エラーが引き続き発生する
MIME マッピングが *.dll を処理するように設定されていることを確認しました。同じマシンの別のサイトで実行されている完全に機能する ISAPI 拡張機能があります。
404 を提供するこの ISAPI 拡張機能を取得し、それを作業中の Web サイトのルート (他の DLL がある場所) に置き、「ISAPI と CGI の制限」をそれに再マップしました。他の DLL を文字通り同時に、または直後に実行できるにもかかわらず、それでも 404.0 が返されます。問題はありません。
WTF が進行中であるという考えはありますか?!
delphi - Delphi TISAPIApplication からのポート/URL データの取得:
*) IIS 7.5 - Server 2008 R2 で実行されている Delphi XE ISAPI dll があります。DLL は TISAPIApplication のインスタンスを起動します。アプリケーションは、目立たない固定の事前定義された URL に存在し、特定のポート (ポート 80 ではない) で要求をリッスンします。もちろん、これらはすべて「標準構成」です。
*) 私のサーバーにはいくつかの dll があり、それぞれが TISAPIApplication の異なるインスタンスを起動し、異なる URL にマップされ、異なるポートでリッスンします。実行時に、ポート番号に基づいてアプリケーションのさまざまなインスタンス (Dev、Prod、FailOver など) を区別します (URL を解析するよりも簡単です)。
*) TISAPIApplication とその祖先および関連クラスのドキュメントとソース コードを調べましたが、アプリケーションの特定のインスタンスがリッスンしているポートを示すプロパティがどこにも見つかりません。リクエストごとにのみ利用可能です。単純な展開では、リスニングポートは通常静的であるため、アプリの起動時にそのポート値を取得できるはずです-これにより、リクエストが来るのを待つ代わりに、特定のリソースの割り当てが容易になります.
*)これを行う方法を知っている人はいますか? どのプロパティをどこから取得する必要がありますか? 実際、アプリケーション自体が存在する URL について何かを教えてくれるものはまったく見つかりません。すべてが要求ごとに機能しているようです。
(お願いします - リクエストを介してそれを行う方法や、HTTP はステートレスであり、すべてがリクエストごとに機能することを教えてくれる回避策を探しているわけではありません - 私はそれらの回避策を知っており、それらを使用したくありません。そして、スレッドは、「ステートレス」な方法で要求を処理するために ISAPI によって生成されます。IIS によって ISAPI dll がロードされると、TISAPIApplication インスタンスが起動されます。この TISAPIApplication インスタンスは、ISAPI アプリケーションの存続期間中持続し、存続期間中有効な状態情報を含みます。アプリケーション インスタンスの )。
ティア
wcf - WCF から ISAPI エクステンションにメッセージを送信できますか?
これを読んでくれてありがとう。IIS/WCF は初めてで、その機能について質問がありました。
IIS に ISAPI 拡張機能を配置して、静的データに応じて要求をさまざまなサーバー/サービスにルーティングしたいと考えています。IIS が開始され、ISAPI 拡張機能が実行されると、WCF にアクセスして、さまざまな要求をルーティングするためにアクティブなサーバーに関する情報を取得します。私の質問は、このデータが変更され、WCF が再起動された場合です...更新されたデータを WCF から IIS に送信して、ISAPI 拡張機能のデータを更新する方法はありますか?
これに関するヘルプや情報をいただければ幸いです。
ありがとう!
java - HttpURLConnection を使用して ISAPI dll から生の http 応答を読み取る方法
私の要件は、Java を使用して IIS でホストされている ISAPI dll から HTTP 要求と応答を送受信することです。私たちの ISAPI dll は、HTTP ヘッダーなしで生の xml データを応答として送信するため、HTTPURLConnection.getinputstream()
クライアントから呼び出すとUnknownLengthHttpInputStream
例外が発生します。HTTPURLConnection
ヘッダーの詳細なしで http 応答データを読み取るために使用できますか、またはクライアントで応答を読み取るためにソケットを使用する必要がありますか?
どんな助けでも大歓迎です。
ありがとう。
delphi - モジュールDLLでRegisterModuleエントリポイントが見つかりませんでした...-何が起こっているのですか?
Delphi XEで記述されたISAPIモジュール(ネイティブ-ASP.netなどはありません)があります。Win764エンタープライズデスクトップマシンのIIS7.5で実行しようとしています。
アプリプール、webSiteなどが正しく構成されている、ISAPIモジュールの実行が許可されている、クラシックパイプライン、32ビットなど-これらの操作を何度も実行しています。
同じモジュールがWin2008R2サーバーで正常に実行され、Win7デスクトップIIS7.5でも実行するために使用されます。
しかし、先週ハードドライブが故障し、新しいWin7インストールを取得しました。これは企業全体の標準のWin7 Enterpriseイメージです(以前のWin 7 64インストールとは異なります)。
モジュールを起動すると、ブラウザが少しハングし、「HTTPエラー503。サービスを利用できません」と返されます。IISでは、エラーが発生した後にアプリプールが停止していることがわかります。これは、Webアプリケーションで重大なエラーが発生したことを意味します。
Windowsイベントログで、次のメッセージが見つかりました。
モジュールDLLG:\Mikey.dllでRegisterModuleエントリポイントが見つかりませんでした。データはエラーです。」
DLL dprでapplication.runが呼び出された後、いくつかのデバッグ文字列にエラーサーフェスが表示されました。
何が起きてる?どうすればこれを修正できますか?開発作業にはこのデプロイメントが必要です。
お願いします-dllはコードを実行するために適切に許可されており、アプリプールは適切に構成されています-application.runが呼び出される前にDLLでかなりの初期化コードが実行されます-したがって、これは単純な構成または許可の問題ではありません-503エラーまた、イベントログエントリもそのことを示しています。
visual-c++ - VS 2005/2008 で ISAPI フィルターを作成する方法
VS 6.0 では、プロジェクトの種類を VC++ の下で MFC ISAPI 拡張 Dll として選択し、それを Filter オブジェクトとして構成するオプションがありました。VS 2005/2008 でこれを達成するにはどうすればよいでしょうか?
asp.net - マルチテナンシーのための ASP.NET 仮想ディレクトリの代替
ASP.NET 4.5 を使用して、ASP.NET WebForms アプリケーションに取り組んでいます。
アプリケーションはマルチテナンシーをサポートしています。各テナントには、次のような独自の URL があります。
http://myApplication.net/DemoTenant1/
Login.aspx では非常に単純化されており、アプリケーションはこのメソッドを呼び出し、この URL を内部 ID に変換します。
問題は現在、200 を超えるテナントがあり、それぞれに WebApplication を定義する必要があることです。
- たくさんの仕事:-)
- テナントごとに独自のワーカー プロセスが開かれているため、おそらく非常に非効率的です。
古い URL との互換性を保つスマートな代替品を探しています。
URLルーティングを介してこれを解決する方法、またはWebフォームとMVCを組み合わせてログインコントローラーを追加する方法を探していますか?
また、他のアイデアにも開かれています...
iis-7 - II7: ISAPI ワイルドカード拡張で 500 エラー (0x8007007f) が生成される
Windows 7 で Visual Studio 2012 を使用して、非常に単純なパススルー ワイルドカード拡張機能である ISAPI 拡張機能を作成しました。32 ビットとしてコンパイルされ、アプリケーション プールが 32 ビット アプリケーションを許可するように設定されている場合、フィルタは適切に機能します。しかし、64 ビットとしてコンパイルすると (そしてプールを 32 ビットを許可しないように変更すると)、コード 0x8007007f で 500 エラーが発生します。64ビット依存はすべて緑色を示します。イベント ログにエラーはありません。DLL を C:\Windows\System32 に移動しようとしましたが、同じエラーが発生します。どんな助けでも大歓迎です。
ありがとう
マルク
delphi - ISAPI 拡張パラメータの保存
Delphi で ISAPI 拡張機能を作成しましたが、これは問題なく動作しますが、構成設定を保存する方法に関するベスト プラクティスがあるかどうか疑問に思っています。これを行う方法はいくつか考えられますが、もちろん最善の方法で行いたいと思います。私はすべての間違った場所を見たかもしれませんが、私を助けるものは何も見つかりません...
dllと同じディレクトリにあるiniまたはxmlファイルは良い方法ですか? または、Windows レジストリを使用しますか? または、ISAPI 拡張機能固有の構成を web.config に配置して、IIS マネージャーを使用して構成することは可能ですか (そして賢明なことですか?) または、他の何か?