6

IIS の web.config のハンドラ セクションにある scriptProcessor に関して、%s (要求されたファイル名を表しているようです) 以外に % 記号はありますか? たとえば、%aa はマクロ/シンボルとして認識されますか? %s 以外にある場合、どこに記載されていますか?

4

2 に答える 2

3

あなたの質問は少し不明確なので、答えるためにいくつかの仮定をしなければなりませんでした。何か問題がありましたらお知らせください。

ドキュメントから:

スクリプト プロセッサ

オプションの文字列属性。

要求を処理する ISAPI 拡張 .dll ファイルまたは Common Gateway Interface (CGI) .exe ファイルの物理パスを指定します。

scriptProcessor 属性は、スクリプト マップ ハンドラー マッピングにのみ必要です。ハンドラーを ISAPI 拡張にマップする場合、modules 属性に ISAPIModule を指定する必要があります。ハンドラーを CGI ファイルにマップする場合、modules 属性に CGIModule を指定する必要があります。

ドキュメントから、フォーマット文字列についての言及はまったくありません。フォーマット文字列があるとしたら、何に置き換えますか? XML に基づく明確な答えはありません。おそらく、環境変数をフォーマット文字列と間違えているのでしょう。または、特定の構成設定には、ライブにプッシュされる前に実行される後処理があります。

実際に環境変数について話している場合は、Win+Break を発行してシステム設定を表示し、詳細設定に移動してから環境変数を開くことで、それらを表示できます。独自に定義することもできます。%variablename%標準の .bat ファイルと同じように、任意の環境変数を使用できます。

編集:さらに調査したところ、次のことがわかりました。 %sスクリプト名が表示され、%sもう一度パラメータが表示されますfoo=bar。この機能は、IIS の公式ドキュメントでは宣伝されていません (私が見つけることができます)。非推奨の機能と見なされていることを強く疑っています。そして、彼らは ISAPI を標準にしようと懸命に取り組んでいます。

それがどのように構造化されているか (つまり、標準の書式文字列のように) のため、他の一般的な書式文字列 ( %d %c %f) を試してみると、興味深い結果が得られるかもしれませんが、おそらくそうではないでしょう。これは、非常に具体的な問題に対する非常に具体的な解決策のようです。

于 2013-07-31T06:35:34.187 に答える