Apache のモジュールに、mod_asis というモジュールがあります。このモジュールを使うと、静的ファイルに HTTP の応答ヘッダーの情報を含ませることができます。 このモジュールを使うと、例えば GIF ウェブビーコンファイルを配信するときにキャッシュさせないように HTTP の応答ヘッダーの情報を含ませて配信することができます。プログラムを通さずに、静的ファイルな配信となるところがよいです。 まず、mod_asis はデフォルトでは読み込まれていないので、次のように LoadModule でモジュールを読み込みます。下記は、64 ビット OS の場合です。 LoadModule asis_module /usr/lib64/httpd/modules/mod_asis.so 次に VirtualHost の中などで、mod_asis のハンドラを設定します。 AddHandle
HttpClient#debug_devにSTDOUTなどを設定しておくと、通信内容を出力してくれます。 require 'rubygems' require 'httpclient' client = HTTPClient.new client.debug_dev=STDOUT #デバックデータの出力先として「STDOUT」を設定 client.get_content( "http://d.hatena.ne.jp/unageanu/" ) 実行結果です。 = Request ! CONNECT TO d.hatena.ne.jp:80 ! CONNECTION ESTABLISHED GET /unageanu/ HTTP/1.1 Date: Sun, 08 Feb 2009 08:00:21 GMT Content-Length: 0 Host: d.hatena.ne.jp = R
を作ってみました。 http://la.ma.la/misc/ajaxchat/ サーバーサイドのソースは5行です。 http://la.ma.la/misc/ajaxchat/write.txt CGIを使うのは書き込みの時だけで、表示はXMLHttpRequestを使ってログファイルを直接読み込みます。更新は差分取得で転送量とサーバー負荷を減らしています。 IEとFirefoxでしか動きません。 Operaはリクエストヘッダのセットが使えないので無理。 仕組み -HEADリクエストでログファイルのサイズを取得 -ファイル末尾1KBを取得 -レスポンスヘッダから最終更新日と現在のファイルサイズを保存 -If-Modified-SinceとRangeヘッダをセットして定期リロード とりあえずこれだけです。参加者表示も何もつけてませんが、改造の雛形にでもどうぞ。 Range付きのリクエストは
Basic 認証において、ユーザ名とパスワードを送信する方法を説明します。 まずユーザ名とパスワードをコロンで結合します。 もしユーザ名「hoge」、パスワード「fuga」の場合、「hoge:fuga」という文字列を作るわけです。 それを BASE64 でエンコードします。 「hoge:fuga」を BASE64 エンコードすると「aG9nZTpmdWdh」となります。 UNIX のコマンドでは、以下のようにして確認できます。 % echo -n 'hoge:fuga' | base64 -e % echo -n 'hoge:fuga' | openssl enc -e -base64 % echo -n 'hoge:fuga' | nkf -MB % echo -n 'hoge:fuga' | perl -MMIME::Base64 -ne 'print encode_base64($_
先月、ぐるなび API がリリースされていました。 ぐるなびさんの持っている膨大なデータベースに Web API を通して気軽にア クセスできるようになったのは、非常に喜ばしいし、その英断に感謝したいと 思います。 しかし、Web API 仕様書、特にエラー仕様を見てちょっとがっかりしました。 もう少し上手にデザインすれば、もっとよかったのに…、という思いです。 一度出してしまった API はそう簡単に変えられないと思いますが、 参考までに僕だったらどうするか、を書いてみます。 この仕様の一番の問題はエラーコードです。 以下は 2-2 のエラー仕様に記述されているサンプルです。 <?xml version="1.0" encoding="UTF-8"?> <gnavi> <error> <code>602</code> </error> </gnavi> タグが三つ(gnavi, erro
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く