none
aspnet_isapi.dllにマッピングしたファイル名にアンパサンドを使用するとエラーになる RRS feed

  • 質問

  • 環境:asp.net 2.0 , iis5.1

    お世話になります。

     

    Global.asaxのイベントにて要求されたExcelファイル名を拾うため、

    仮想ディレクトリのプロパティ-構成にて拡張子「.xls」を「aspnet_isapi.dll」に

    マッピングしましたところ、マッピング前は「ファイルのダウンロード」ダイアログが

    表示されましたが、マッピング後は「ページが見つかりません」「HTTP 400 - 正しくない要求」

    と表示されExcelファイルをダウンロードできません。

    原因はExcelのファイル名「AAAA&BBBB.xls」の「&」にあると思われます。

    ファイル名を変更する以外に正しくダウンロードできるような方法は

    ございませんでしょうか?

     

    • 移動 Wang Huang 2012年10月1日 14:49 (移動元:Internet Information Services 5.x, 6.0 - 全般)
    2010年6月23日 3:51

回答

  • EI1207 さん、こんにちは。
    フォーラム オペレーターの星 睦美です。

    私のほうで調べてみましたが、 残念ながら IIS 5.1についての情報を見つけることができませんでした。

    IIS 6, IIS 7とASP.NETの環境では レジストリ設定を変更して、HTTP 400 のエラーを回避する方法についての
    情報がありましたのでご紹介させていただきます。

    参考情報:
    ・Configure IIS to accept URL with Special Characters (%, &, :, *) 
    http://adorr.net/2010/01/configure-iis-to-accept-url-with-special-characters.html (英語)

    ・IIS 用の Http.sys レジストリ設定
    http://support.microsoft.com/kb/820129/ja

    ・.NET Framework 1.1 で "HTTP 400 - 正しくない要求" エラー メッセージが表示される
    http://support.microsoft.com/kb/826437/ja

    こちらの情報が何か手がかりになれば幸いです。
    __________________________________________________
    マイクロソフト株式会社 フォーラム オペレーター 星 睦美

    • 回答としてマーク EI1207 2010年6月24日 9:04
    2010年6月24日 8:29

すべての返信

  • EI1207 さん、こんにちは。
    フォーラム オペレーターの星 睦美です。

    私のほうで調べてみましたが、 残念ながら IIS 5.1についての情報を見つけることができませんでした。

    IIS 6, IIS 7とASP.NETの環境では レジストリ設定を変更して、HTTP 400 のエラーを回避する方法についての
    情報がありましたのでご紹介させていただきます。

    参考情報:
    ・Configure IIS to accept URL with Special Characters (%, &, :, *) 
    http://adorr.net/2010/01/configure-iis-to-accept-url-with-special-characters.html (英語)

    ・IIS 用の Http.sys レジストリ設定
    http://support.microsoft.com/kb/820129/ja

    ・.NET Framework 1.1 で "HTTP 400 - 正しくない要求" エラー メッセージが表示される
    http://support.microsoft.com/kb/826437/ja

    こちらの情報が何か手がかりになれば幸いです。
    __________________________________________________
    マイクロソフト株式会社 フォーラム オペレーター 星 睦美

    • 回答としてマーク EI1207 2010年6月24日 9:04
    2010年6月24日 8:29
  • フォーラム オペレーター 星さん

    調査、ご回答ありがとうございます。


    今回の目的は「.html」ファイル上のリンクより要求された(Excel等の)ファイル名を
    ログファイルへ出力するだけなので、技術力のない者(私)にとってリスクの高いレジストリの
    編集を実施するほどの要件ではないと判断し、諦めようと思っています。

    以下の方法でも実現可能な処理だと考えていますし。
    ・「&」記号を使用しない。
    ・すべてASP.NETで記述する。


    頂いた情報は今後に役立てたいと思います。

    2010年6月24日 9:37