• ベストアンサー

Content-Disposition:

メーラーを作っています。 Content-Disposition: の後ろには、必ず filename= があると思って良いのでしょうか? アドバイスしていただければ幸いです。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • sumou111
  • ベストアンサー率56% (50/89)
回答No.1

C&C++ではないのですが、Servletでメーラを作った経験があります。 「filename=」は必須ではなく任意のようです。しかしメールにファイルを添付する際のファイルアップロードや、添付ファイル付きのメールを受け取った際のファイルダウンロードを行うときは、「filename=」を付けないと実現できないのではないでしょうか。そういう意味でも必須と考えてよいのではないかと思います。(勝手な意見ですが・・・) Content-Dispositionの詳しい説明はRFC2183に載っていますので、そちらを参照してみてはいかがでしょうか。

参考URL:
http://www.cse.ohio-state.edu/cgi-bin/rfc/rfc2183.html

関連するQ&A

  • Content-Disposition: inlineの必要性?

    下記の例で、exampe.jpgをindex.htmlに、index.phpを介して、読み込ませる(表示する)場合、私が参考にしたコードではindex.phpのコードは以下の例のようになりますが(ちゃんと動作します)、なぜ「header("Content-Disposition: inline; filename=" . "example.jpg");」がindex.phpに必要なのか分かりません(どのような働きをしているのか?)。 私の場合、index.htmlからexample.jpgをダウンロードさせることは想定しておらず、ただexampe.jpgをindex.htmlに表示させたいだけです(実際には、example.jpgのダウンロード等を防ぐ目的の一部としてexample.jpg をcacheさせないためにindex.phpを利用しています。)。この場合でもやはり「header("Content-Disposition: inline; filename=" . "example.jpg");」がindex.phpに記述されていたほうが良いのでしょうか? 例: ディレクトリ構成(/var/www/htmlが公開ディレクトリ) /var/www/html/example.jpg /var/www/html/index.html /var/www/html/index.php - index.html: <img src="index.php" width="100" height="100" border="0"> - index.php: header("Content-type: image/jpeg"); header("Content-Disposition: inline; filename=" . "example.jpg"); header("Content-length: " . filesize("example.jpg")); readfile("example.jpg"); しかし、実際には、 - index.php: header("Content-type: image/jpeg"); header("Content-length: " . filesize("example.jpg")); readfile("example.jpg"); のように「header("Content-Disposition: inline; filename=" . "example.jpg");」なしでもexample.jpgはちゃんとindex.htmlに表示されます。 この質問に関連する情報が記載されたサイト等も、ご存知でしたらURLをお教えください。 よろしくお願いします。

    • 締切済み
    • PHP
  • Content-Dispositionヘッダーとは

    初めまして。今Javaでクライアントからファイルを指定し、サーバーにファイルをアップロード、そしてDBに登録というプログラムを作成しています。 ファイルをサーバーにアップロードした後、そこからファイルの名前などをContent-Dispositionヘッダーと言うものを利用して取得しているのですがこのContent-Dispositionとは一体何なのでしょうか。簡単な説明でも全然大丈夫なのでぜひ教えて下さい。よろしくお願いします。

  • これの正解を教えてください

    超初心者なんですけれど・・・ <?php $filename = & $_POST["filename"] header("Content-type: audio/mpeg"); header("Content-Disposition: attachment; filename=$filename"); readfile($filename); ?> これの正解を教えてください! お願いします。

    • ベストアンサー
    • PHP
  • ファイルダウンロードのContent-type

    ファイルをアップロード/ダウンロードできるスクリプトを作って運用しています。 2年ほど運用して特に問題なかったのですが、今日、ユーザーからダウンロードできないと問い合わせがきました。 Conten-typeでアプリケーションをしっかりと指定していないことが原因かもしれないと思っているのですが、 どうでしょうか? 言語はPerlです。 アップされたファイルは、ダウンロード時に、頭に以下を付けて送信しています。 エクセルやpdf、ファイルの種類が何になるか分からないため、Content-typeには applicationと記入しています。これが問題でしょうか? ファイル毎に拡張子を見て、Content-typeを書き直すというのが普通なのでしょうか? print "Content-type: application\n"; print "Content-Disposition: attachment; filename=$in{'filename'}\n\n"; 現象 ファイルをダウンロードしようとすると、エラーメッセージを表示 「サーバーが見つからないかDSNエラーです」 ブラウザ:不明 OS:不明 セキュリティー関連ソフトの有無:不明 すみません、ユーザーにもっと詳細を聞くべきだとは思いますが、予めこちらで調べておいてからコンタクトとろうと思っています。

  • filename=に文字変数をいれる

    PHPにて Header("Content-Disposition", "attachment;filename= "); filenameのところに文字変数$filenameを入れる方法を教えてください。 初歩的過ぎてすみません、いろいろ調べてもわかりませんでした。 お願いします。

    • ベストアンサー
    • PHP
  • Content-MD5対応メーラー

    Content-MD5対応メーラーをご存じでしたら、教えてください。

  • ファイルのダウンロードが出来ない

    こんばんは。お世話になっております。 CSVファイルをダウンロードさせるスクリプトを作成したのですが、そのスクリプト(ファイル)を、さくらインターネットのサーバへアップすると「ダウンロードせずにブラウザに表示されるだけ」という状態になってしまいます。(ローカル上や別サーバでは問題ない) ファイル上に記述する、Headerですが、サイトによっていくつかの記述方法があったので、以下のように2種類のHeaderを試していますが、共に「さくらインターネットだけがダウンロードしない」状況です。 ファイルをダウンロードさせるスクリプトは、今回初めて作ってみたのですが、他にどのような対処法があるのかが分かりません。考えられる可能性だけでも結構ですので、アドバイスいただけると幸いです。 //Header("Content-type:application/x-csv;"); //header("Content-Disposition: inline; filename=$fname.csv"); header("Content-Type: application/octet-stream;"); header("Content-Disposition: attachment; filename=$fname.csv"); 以上、お忙しい中恐縮ですが宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • Thunderbirdでcsvファイルを添付した時のContent-Typeについて

    環境  WinXP Thunderbird1.5.0.10(端末1、端末2) 質問  Thunderbirdでcsvファイルを添付した時、同じファイルなのにメールを作成する端末によって、メールソースの一部が異なってしまいます。  メールのソースを確認したところ、添付ファイル部分が   ■端末1   Content-Type:text/Plain   Content-Disposition:inline   ■端末2   Content-Type:application/vnd.ms-excel   Content-Disposition:inline  となっていました。  端末2でMIMEの設定を変更し、csvの関連付けをエディタにしてみたのですが、それでも「Content-Type:application/vnd.ms-excel」になりました。  「Content-Type」に入る値はどの設定?に依存しているのでしょうか?  端末1から送信したメールの添付ファイルが本文に展開されてしまったため、調査を開始したのですが、ここで行き詰ってしまいました。  「Content-Disposition」がinlineにならないようにする設定は他の質問コーナーで分かったのですが、動作仕様を把握したく質問させて頂いてます。  諸事情により端末1の環境構成を知ることが出来ない状況です。 宜しくお願いします。

  • データの受け渡し

    /hoge.php?id=3の値をhoge.phpで受け取り、hoge.php内の $filename="../../file_manager/uploads/aaa"; header("Content-Disposition: inline; filename="."aaa"); のaaaの部分に入れたいんですが、どうすればいいですか?

    • ベストアンサー
    • PHP
  • 正規表現。たぶん単純な質問です。

    とほほさんのフリーソフト、wwwupl.cgiを解読中なのですが、そこに、 elsif(/^Content-Disposition: ([^;]*); name="([^;]*)"; filename="([^;]*)"/i){…} このelsifの中の/ /iのiは何を意味しているのでしょうか。

    • ベストアンサー
    • CGI