Content-Disposition

あまり気にしていなかったのですが時間があったので調べました。

○HTTPレスポンスのヘッダだけ表示する


$ wget -S --spider http://www.cpan.org/src/5.0/perl-5.12.3.tar.gz
スパイダーモードが有効です。リモートファイルが存在してるか確認します。
--2011-03-28 22:17:17-- http://www.cpan.org/src/5.0/perl-5.12.3.tar.gz
www.cpan.org をDNSに問いあわせています... 212.117.177.118, 199.15.176.140
www.cpan.org|212.117.177.118|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています...
HTTP/1.1 200 OK
Server: Apache/2.2.3 (CentOS)
Last-Modified: Sat, 22 Jan 2011 02:40:28 GMT
ETag: "6c2006-e3df1b-49a664a231f00"
Cache-Control: max-age=1200
Content-Type: application/x-gzip
Content-Length: 14933787
Date: Mon, 28 Mar 2011 13:17:18 GMT
X-Varnish: 236805093 236804696
Age: 487
Via: 1.1 varnish
Connection: keep-alive
X-Served-By: eu3.develooper.com
X-Cache: HIT
X-Cache-Hits: 1
長さ: 14933787 (14M) [application/x-gzip]
リモートファイルが存在します。


○Url!=ファイル名 的なヤツのファイル名

http://.....download.php?current のようなやつは、HTTPヘッダ Content-Disposition
に記述されているそうな。


$ wget -S --spider http://alexgorbatchev.com/SyntaxHighlighter/download/download.php?sh_current
...
Content-Disposition: attachment; filename=syntaxhighlighter_3.0.83.zip
...
$ wget --content-disposition http://alexgorbatchev.com/SyntaxHighlighter/download/download.php?sh_current
$ ls
syntaxhighlighter_3.0.83.zip
$


○gitも同じ
--content-disposition を使わないと、master というファイル名で保存されると思います。


$ wget http://github.com/mikecrittenden/bluetrip/tarball/master --no-check-certificate \
--content-disposition
...
2011-04-24 14:58:19 (158 KB/s) - `mikecrittenden-bluetrip-990835d.tar.gz' へ保存完了 [28057/28057]


最近は wget より curl が好かれてる?