http://www.microsoft.com/japan/technet/prodtechnol/iis/iis5/ ...
動的コンテンツも圧縮できる模様。
クライアントは HTTP 1.1 でなければならない。
オプション周りにバグがあるようで、動的コンテンツ・静的コンテンツ全体で圧縮をするかどうかだけしか設定できないらしい。
動的コンテンツも圧縮できる模様。
クライアントは HTTP 1.1 でなければならない。
オプション周りにバグがあるようで、動的コンテンツ・静的コンテンツ全体で圧縮をするかどうかだけしか設定できないらしい。
ZDNet: Helpdesk - How-To 「Windows 2000 - Development Guide for Business Applications」
http://www.zdnet.co.jp/help/howto/win/win2000/0007complus_vb ...
http://www.zdnet.co.jp/help/howto/win/win2000/0007complus_vb ...
vodafone は from が無かったり、名前を引けなかったりすると reject してしまうようだ。from を指定したいが、標準の mail コマンドで from を指定できるインターフェイスを見つけられなかった。仕方がないので、sendmail コマンドで代用することにした。
Manpage of SENDMAIL
http://www.linux.or.jp/JM/html/sendmail/man8/sendmail.8.html
-v を付ければ smtp サーバとのやりとりを見せてくれる。
Manpage of SENDMAIL
http://www.linux.or.jp/JM/html/sendmail/man8/sendmail.8.html
$ echo -e "Subject: Test Posting\nTo: saitou-hiroaki@example.com\nFrom: \"SendTest\"<saitou-hiroaki@example.com> \n`date`" | /usr/sbin/sendmail -f 'Test Posting <saitou-hiroaki@example.com>' -t saito_hiroaki@phone.example.com,saitou-hiroaki@example.com
-v を付ければ smtp サーバとのやりとりを見せてくれる。
$ echo -e "Subject: Test Posting\nTo: saitou-hiroaki@example.com\nFrom: \"SendTest\"<saitou-hiroaki@example.com> \n`date`" | /usr/sbin/sendmail -v -f 'Test Posting <saitou-hiroaki@example.com>' -t saito_hiroaki@phone.example.com,saitou-hiroaki@example.com
saito_hiroaki@phone.example.com,saitou-hiroaki@example.com... Connecting to smtp.example.com. via smtp...
220 adm.example.com ESMTP
>>> EHLO pro.example.com
250-adm.example.com
250-PIPELINING
250 8BITMIME
>>> MAIL From:<saitou-hiroaki@example.com>
250 ok
>>> RCPT To:<saito_hiroaki@phone.example.com>
250 ok
>>> RCPT To:<saitou-hiroaki@example.com>
250 ok
>>> DATA
354 Enter mail, end with "." on a line by itself
>>> .
250 ok 1069746582 qp 14753
saito_hiroaki@phone.example.com,saitou-hiroaki@example.com... Sent (ok 1069746582 qp 14753)
Closing connection to smtp.example.com.
>>> QUIT
221 adm.example.com
C# などから MySQL に接続するためのライブラリやドライバ。Data Provider と呼ぶのが正しいのかな。
ODBC を使うのが一般的なようだ。
ライブラリ
http://www.cybercom.net/~zbrad/DotNet/MySql/
http://sourceforge.net/projects/mysqldrivercs/
http://sourceforge.net/projects/mysqlnet/
JDBCドライバ
http://web.archive.org/web/20030612135522/http://t3-jpn.com/ ...
ODBC を使うのが一般的なようだ。
ライブラリ
http://www.cybercom.net/~zbrad/DotNet/MySql/
http://sourceforge.net/projects/mysqldrivercs/
http://sourceforge.net/projects/mysqlnet/
JDBCドライバ
http://web.archive.org/web/20030612135522/http://t3-jpn.com/ ...
確か昔どこかで読んだ記憶がある。ハイエンドの Unix では標準的な機能らしい。
Google で カーネル パッチ 起動中を検索すると、表示順は後ろの方だったがヒット。
あまり適切なキーワードじゃなかったみたいだ。
solaris のホットパッチという機能だ。
LinuxWorld Online:LinuxとSolarisの違いを知る:第10回 ノンストップ・システムを支えるホット・パッチ機能
http://www.idg.co.jp/lw/news/back/index20020724_01_solaris.h ...
Sun Microsystems - Solaris Feature Stories
http://jp.sun.com/solaris/cover/2001-0321/
「エンジニアと顧客が協力して」が気になるが、できることはできるようだ。いいなあ。
Google で カーネル パッチ 起動中を検索すると、表示順は後ろの方だったがヒット。
あまり適切なキーワードじゃなかったみたいだ。
solaris のホットパッチという機能だ。
LinuxWorld Online:LinuxとSolarisの違いを知る:第10回 ノンストップ・システムを支えるホット・パッチ機能
http://www.idg.co.jp/lw/news/back/index20020724_01_solaris.h ...
Sun Microsystems - Solaris Feature Stories
http://jp.sun.com/solaris/cover/2001-0321/
ホットパッチ機能: Sun のエンジニアが顧客と協力して、リブートせずにオペレーティングシステムのカーネルの重要領域にパッチをあてることができます。ホットパッチ機能を使用すると、診断、テスト、分析および問題の是正に必要なシステムのダウンタイムを大幅に短縮できます。
「エンジニアと顧客が協力して」が気になるが、できることはできるようだ。いいなあ。
連載:ロードバランサの本質(1)パケットフローから負荷分散の基本を理解する 〜NAT/コネクションテーブル/MAT〜
http://www.atmarkit.co.jp/fnetwork/rensai/lb01/lb01.html
負荷分散装置を利用したシステム構築
http://www.soi.wide.ad.jp/iw2001/slides/11/11-1/
http://ultramonkey.jp/
http://ultramonkey.jp/2.0.1/topologies/
Linux仮想サーバーを使用したレイヤ4スイッチング
リバースプロキシ & ロードバランサ − Pound
http://www10.ocn.ne.jp/~sayu/other/pound.html
レイヤ7でのロードバランシングが可能
pound
http://www.apsis.ch/pound/
The Linux Virtual Server Project - Linux Server Cluster
http://www.linuxvirtualserver.org/
mod_perl における C10K Problem
http://www.google.co.jp/search?q=cache:y_K-VLZSdd4J:shibuya. ...
応用事例
ネットワーク負荷分散技術 概要
http://www.microsoft.com/japan/windows2000/techinfo/howitwor ...
Windwos 版 Ultra Monkey みたいな機能。NLB と呼ばれる。Windows2003 Serer か、Windows2000 Advanced Server が必要。
heart beat 検出のために複数の NIC が必要。
http://www.atmarkit.co.jp/fnetwork/rensai/lb01/lb01.html
負荷分散装置を利用したシステム構築
http://www.soi.wide.ad.jp/iw2001/slides/11/11-1/
- ソフトウェアロードバランサ
UltraMonkey - VA Linux Systems ジャパンhttp://ultramonkey.jp/
http://ultramonkey.jp/2.0.1/topologies/
Linux仮想サーバーを使用したレイヤ4スイッチング
リバースプロキシ & ロードバランサ − Pound
http://www10.ocn.ne.jp/~sayu/other/pound.html
レイヤ7でのロードバランシングが可能
pound
http://www.apsis.ch/pound/
The Linux Virtual Server Project - Linux Server Cluster
http://www.linuxvirtualserver.org/
mod_perl における C10K Problem
http://www.google.co.jp/search?q=cache:y_K-VLZSdd4J:shibuya. ...
応用事例
ネットワーク負荷分散技術 概要
http://www.microsoft.com/japan/windows2000/techinfo/howitwor ...
Windwos 版 Ultra Monkey みたいな機能。NLB と呼ばれる。Windows2003 Serer か、Windows2000 Advanced Server が必要。
heart beat 検出のために複数の NIC が必要。
- 書籍
CGI からファイルをダウンロードさせたい。これだけなら非常に単純で簡単なのだが、今回は一度に複数のファイルをレスポンスとして返したい。複数のファイルを tar などでまとめるという方法は使えない。
単数のファイルだったら適切な Content-Type ヘッダを出力して、CRLF を2つ出力した後、ボディ部分を出力してやればいい。実に簡単だ。でも、返すデータが複数の場合はどんな http response を返せばいいのか調べてみた。
すぐに思いついた先行事例は、フォームによるファイルのアップロードだ。フォームによるファイルのアップロードでは、複数ファイル同時送信なんて当たり前だ。たとえば、Yahoo Mail などで添付ファイルを付けるとき、一気に付けることができる。
そのときの Content-Type って何を使っているのかを調べればいい。Google で http ファイル アップロード content-type で検索。すると Content-type: multipart/form-data というものを使っていることが判明。なるほど、フォームから送るときはこうするんだな。
次に、思いついた先行事例はメールだ。メールで複数の添付ファイルを付けたときって、どんな Content-Type なのかを調べてみた。Netscape Messanger の sent ディレクトリから、過去に自分が送ったメールのうち、複数の添付ファイルをがあるものを探してヘッダを見てみた。
http://www.atmarkit.co.jp/fnetwork/rensai/netpro04/netpro01. ...
RFC 2616によると、以下のように定義されていた。multipart/mixed はかなりローレベルな型なんだな。
http://www.studyinghttp.net/rfc_ja/2616/sec3.html
単数のファイルだったら適切な Content-Type ヘッダを出力して、CRLF を2つ出力した後、ボディ部分を出力してやればいい。実に簡単だ。でも、返すデータが複数の場合はどんな http response を返せばいいのか調べてみた。
- 複数ファイルを返すための Content-Type
結局 Content-Type 次第だと思う。適切な Content-Type とそれを理解する UserAgent であれば、複数ファイルだろうがなんだろうが返してあげられるはず。複数ファイルのまとめ送りに適した Content-Type がきっとあるはずだ。それを調べてみる。すぐに思いついた先行事例は、フォームによるファイルのアップロードだ。フォームによるファイルのアップロードでは、複数ファイル同時送信なんて当たり前だ。たとえば、Yahoo Mail などで添付ファイルを付けるとき、一気に付けることができる。
そのときの Content-Type って何を使っているのかを調べればいい。Google で http ファイル アップロード content-type で検索。すると Content-type: multipart/form-data というものを使っていることが判明。なるほど、フォームから送るときはこうするんだな。
次に、思いついた先行事例はメールだ。メールで複数の添付ファイルを付けたときって、どんな Content-Type なのかを調べてみた。Netscape Messanger の sent ディレクトリから、過去に自分が送ったメールのうち、複数の添付ファイルをがあるものを探してヘッダを見てみた。
Content-Type: multipart/mixed; boundary="------------546DD04699AFAF892A7D6D3F"と書いてある。なるほど、multipart/mixed でいいんだな。boundary はデリミタだな。
- 結論 HTTP レスポンスで複数ファイルを返すには multipart/form-data か multipart/mixed
サーバは Content-type: multipart/form-data か Content-Type: multipart/mixed で送信する。Content-Type: multipart/mixed が汎用的でいいだろう。で、それを理解するクライアントで受信させる。Internet Explorer や Mozilla などでは理解してくれないかもしれないが、今回は専用のクライアントを使用可能なので問題ない。- 参考
連載:インターネット・プロトコル詳説(4)MIME(Multipurpose Internet Mail Extensions)〜後編http://www.atmarkit.co.jp/fnetwork/rensai/netpro04/netpro01. ...
RFC 2616によると、以下のように定義されていた。multipart/mixed はかなりローレベルな型なんだな。
http://www.studyinghttp.net/rfc_ja/2616/sec3.html
3.7.2 マルチパートタイプ
MIME は、一つのメッセージボディの中に複数のエンティティをカプセル化する "multipart" タイプをいくつか供給する。すべてのマルチパートタイプは RFC 2046 [40] の section 5.1.1 で定義されているように、共通のシンタックスを共有し、メディアタイプ値の一部として境界パラメータ{boundary parameter} を含めなければならない。メッセージボディは、それ自身プロトコル要素の一部であり、それゆえに、body-parts 間の行末を表すためには CRLF のみを使用しなければならない。 RFC 2046 と異なり、どのマルチパートメッセージのエピローグ{epilogue} も空でなければならない。そのため、HTTP アプリケーションは (たとえ元のマルチパートがエピローグを含んでいても) エピローグを転送してはならない。これらの制限は、最後のマルチパートの境界線によってメッセージボディの "終端" を示せるように、マルチパートのメッセージボディに自己限界性質{the self-delimiting nature} を持たせるために存在する。
一般的に、HTTP はマルチパートメッセージボディを他のメディアタイプとは区別無く、すなわち単なる付加物{payload} として扱う。ただ一つ例外は、206 (Partial Content) レスポンス中に現れる時の "multipart/byteranges" タイプ (appendix 19.2) であり、その場合 section 13.5.4 や section 14.16 で表されるような、いくつかの HTTP キャッシュメカニズムによって解釈されるだろう。その他のすべての場合では、HTTP ユーザエージェントは、MIME ユーザエージェントがマルチパートタイプの受けとる時と同じ、または似たような振る舞いをすべきである。マルチパートメッセージボディの各々のボディ部分中の MIME ヘッダフィールドは、HTTP ではそれらの MIME セマンティクスによる定義以上にどんな意味も持たない。
一般的には、HTTP ユーザエージェントは、MIME ユーザエージェントがマルチパートタイプの受けとる時と同じ、または似たような振る舞いをすべきである。アプリケーションが認識できないマルチパートサブタイプを受け取った場合は、それを "multipart/mixed" に相当するものとして扱わなければならない。
注意: "multipart/form-data" タイプは、RFC 1867 [15] で表されるように、特に POST リクエストメソッド経由で処理するのに合ったフォームデータを転送するために特別に定義されている。
! の個数によって訳が変わる。excite は芸が細かいな。
http://www.excite.co.jp/world/text/?wb_lp=ENJA&before=sh ...
http://www.excite.co.jp/world/text/?wb_lp=ENJA&before=sh ...
http://www.excite.co.jp/world/text/?wb_lp=ENJA&before=sh ...
http://www.excite.co.jp/world/text/?wb_lp=ENJA&before=sh ...
! の個数が1から3個のときは同じ訳になるようだ。・・・何の役にも立たないメモだな。
http://www.excite.co.jp/world/text/?wb_lp=ENJA&before=sh ...
http://www.excite.co.jp/world/text/?wb_lp=ENJA&before=sh ...
http://www.excite.co.jp/world/text/?wb_lp=ENJA&before=sh ...
http://www.excite.co.jp/world/text/?wb_lp=ENJA&before=sh ...
! の個数が1から3個のときは同じ訳になるようだ。・・・何の役にも立たないメモだな。
ファイル名をクオートしなくても良いなら xargs を使った方が速い。
find -exec はクオートを勝手にやってくれてるというか、うまく処理してくれているようだ。
find UNIXの部屋 検索結果
http://x68000.startshop.co.jp/~68user/unix/pickup?find
find -exec はクオートを勝手にやってくれてるというか、うまく処理してくれているようだ。
find UNIXの部屋 検索結果
http://x68000.startshop.co.jp/~68user/unix/pickup?find
ソースの中から文字列「hogehoge」を検索するには
% find . -name \*.c -exec grep hogehoge {} \;
とすればよいが、これでは *.c のファイルの数だけ grep コマンドが実行され、時間がかかる。そういう場合は
% find . -name \*.c -print | xargs grep hogehoge
とすればよい。もっときっちりやるなら
% find . -name \*.c -print0 | xargs -0 grep hogehoge /dev/null
なのだが、詳しくはマニュアルを読んでくれい。
http://www.kaimei.org/note/book_out/eff_perl.html
Effective Perl は一時期買おうかと思ってたんだけど、Perl クックブックがあるから見送った。
http://www.ascii.co.jp/bookmart/pdf/47561/4756130577.pdf には pdf もある。
Effective Perl は一時期買おうかと思ってたんだけど、Perl クックブックがあるから見送った。
http://www.ascii.co.jp/bookmart/pdf/47561/4756130577.pdf には pdf もある。
Effective Perl
ジョセフ・N. ホール / ランドル・L. シュワォーツ / Joseph N. Hall / Randal L. Schwartz / 吉川 邦夫
発売日: 1999/03
amazon で詳しく見る bk1で詳しく見る
ジョセフ・N. ホール / ランドル・L. シュワォーツ / Joseph N. Hall / Randal L. Schwartz / 吉川 邦夫
発売日: 1999/03
amazon で詳しく見る bk1で詳しく見る