本書のサンプルプログラムを使用するためには、次のものが正しくインストールされていなけばなりません。Webサーバーソフトウェア(Apacheなど)RubyインタプリタMySQL、PostgreSQL、SQLiteのいずれかMySQL、PostgreSQLを使う場合には、Rubyのための拡張モジュールRuby/DBIAmritaこのページでは、Webサーバーが正しくインストールされているか確認し、サンプルプログラムをインストール・実行する手順を紹介します。Ruby/DBIのインストールについては、こちらを参照してください。ユーザー名はfooとします。ディレクトリに次のファイルを作成します(このファイルはテストが終わったら削除してください)。"</pre>\n"実行許可を付し、シェルで実行します。./test.rb実行結果は次のようになります。ユーザーfooが実行していることが分かります。/bin/bash</pre>Webサーバーから起動する前に、パーミションなどを確認します。/home/fooディレクトリのパーミションを確認します。700であれば701に変更します(700ではエラー403が発生)。/home/fooおよび/home/foo/public_htmlは、自分以外が書き込み可能であってはいけません(エラー500が発生)。~/public_html次に、~/public_html/.htaccessファイルを修正します。本書では古典的なCGIインターフェイスを使っているので、次のようにします。mod_rubyなどを使う場合は、適宜変更してください。.cssこれらの設定が終わってから、Webブラウザで呼び出します。http://orange/~foo/test.rb次のようにnameがfoo以外(apacheやwwwなど)になる場合は、suEXECが有効になっていません。この場合は、本書のサンプルプログラムで行っているセキュリティチェックを緩める必要があります。/sbin/nologin画面に次のように表示されれば、suEXECが有効になっています。本書で期待するとおりに動いており、サンプルプログラムを修正する必要はありません。/bin/bashサンプルプログラムのインストールサンプルプログラムのアーカイブファイルは、オーム社のWebサイトから入手します。Webデータベースプログラミング」このファイルのディレクトリ構造は、次のようになっています。画像ファイルディレクトリを再配置します。cart.rb上記の一連のコマンドにより、次のような構成になります。構成を変更する場合は、移動するディレクトリのファイルをrequireしているスクリプトを適宜書き換えます。内部データこれに合わせて、設定ファイルconf.rbの内容を修正します。"/home/foo/public_html/sample-shop/"カウンタファイルを作成します。~/wwwdata/shop/sale_counterさらに、データベースプロファイルを作成します。データベース名、パスワードなどをスクリプト中に直接書くのは、セキュリティ、移植性の観点から避けるべきです。次の内容の~/wwwdata/shop/dbpasswdファイルを作成します。「=」の右は実際にはタブ区切りで、データベース名、ユーザー名、パスワードを記述します。