2004/07/29、おかげさまで、本サイト管理人 futomi が執筆した Perl 本が出版されました!!

 futomi が本サイトを運営し、各種 CGI を作り上げてきたノウハウを惜しみなく注ぎ込みました。ホスティングサービスでは、さまざまな制約があり、時にはライブラリーやモジュールが無くて動作しないことも。。。しかし、本書では、ホスティングサーバでも確実に動作できるようにするためのテクニックを重点的に解説しています。

 今まで、本やネットから仕入れた知識で CGI を作ってはみたものの、自分のホスティングサーバでは動かなかったなんて方や、自分も CGI プログラマーになろう!って方には、是非オススメです。また、簡単に本書のノウハウが使えるよう、殆どの解説ではサブルーチン化しております。中身を理解しなくても、極力、すぐに使えるように工夫しました。机の上に並んでいる書籍の一つに加えて頂けると幸いです。

書籍名 Perl/CGI 職人気質(かたぎ)
著者 羽田野 太巳
ページ数 366 頁
出版社 ソフトバンクパブリッシング株式会社
ISBNコード ISBN4-7973-2475-9


目次

序章 基本知識の確認
CGI 動作権限とパーミッション
Perl のパス
FTP 転送モード
コラム 粋な Perl 作法 (1)
第壱章 すべての基本はフォームにあり
壱ノ壱  フォームについて
  概要
  URL エンコードとデコードについて
壱ノ弐  サーバでデータを受け取るポイント
  概要
  送信メソッドを区別する
  GET で送信されたデータを受け取るには?
  POST で送信されたデータを受け取るには?
壱ノ参  CGI モジュールでデータを安全に受け取る
  概要
  CGI モジュールを利用するための準備
  フォームデータを変数に格納する
  複数選択フォームデータを配列に格納する
コラム 粋な Perl 作法 (2)
第弐章 文字列操作をとことん極める
弐ノ壱  文字コードを理解する
  はじめに
  Jcode.pm をサーバに設置する
  Jcode.pm で文字コード変換
コラム 粋な Perl 作法 (3)
弐ノ弐  不正文字列を賢くチェックする
  概要
  半角数字だけを許可する
  半角アルファベットだけを許可する
  ASCII 文字だけを許可する
  全角英数字だけを許可する
  ひらがなだけを許可する
  全角カタカナだけを許可する
  郵便番号形式チェック
  電話番号形式チェック
  メールアドレスチェック
弐の参  さまざまな文字コードを変換するワザ
  全角カナから半角カナへ
  半角カナから全角カナへ
  英数字の全角/半角変換
  大文字・小文字の変換
  数字にカンマを挿入する
弐ノ四  1 文字ずつに分割する
  日本語文字を 1 文字ずつ分割する
  CSV 形式から要素を取り出す
第参章 CGIメールの礼儀作法
参ノ壱  メール送信の基本を極める
  メールヘッダー概要
  メールを送信する
  エラーメールを受信する
参ノ弐  正しい作法で日本語メールを送る
  概要
  日本語のメール本文を送る
  Base64 エンコード
  日本語サブジェクトを使う
  日本語の差出人を使う
参ノ参  添付ファイルの送り方
  概要
  マルチパートを理解する
  メディアタイプを理解する
  添付ファイルを送信する
コラム Perl が計算間違い? 〜 小数の計算は要注意 (1) 〜
第四章 ネットワークプログラミング
四ノ壱  HTTP
  はじめに
  HTTP 概要
  LWP モジュールを使う
  LWP で HTML を取得する
  LWP でレスポンスヘッダーを取得する
  ベーシック認証が設定されているページを取得する
  LWP モジュールが使えないサーバでの HTTP 通信
  レスポンスヘッダーを取得する
  活用事例 〜 URL の存在チェック 〜
四ノ弐  POP3
  はじめに
  Mail::POP3Client モジュールを設置しよう
  POP3Client モジュールの使い方
  ヘッダーの分解
第五章 XML の扱い方
五ノ壱  XML の概要
  XML とは
  Perl で XML を扱う
五ノ弐  Amazon Web サービス
  Amazon Web サービスの概要
  Amazon Web サービスの準備
  商品を検索してみよう
  活用事例 〜 自分のサイトに新刊情報をリアルタイム表示 〜
第六章 ホスティングサーバ・ハック
六ノ壱  サーバ情報をハックする
  カレントディレクトリのフルパスを調べる
  サーバのマシン情報、OS、バージョンを調べる
  CGI の実行権限を調べる
  コマンドパスを調べる
六ノ弐  Perl 情報を取得する
  Perl のバージョンを調べる
  利用可能な Perl モジュールを調べる
  利用可能な Perl モジュールのバージョンを調べる
コラム Perl が計算間違い? 〜 小数の計算は要注意 (2) 〜
第七章 環境非依存、最強 CGI の作り方
七ノ壱  サーバ環境に依存する問題解決テクニック
  文字化けを回避する
  モジュールのロードエラーをトラップする
  間違っているとえらい目に遭う、Perl モジュールのサーチパス
  OS 間での改行コードの相違を見落としていないか?
七ノ弐  オーバーロードを回避する 〜 メモリー節約テクニック 〜
  あなどるなかれ、サーバ環境でのメモリー
  漫然とファイルを読み込んでいないか?
  使わなくなった変数は処置する 〜 undef で破棄 〜
  リファレンスを活用してメモリー節約
七ノ参  パフォーマンス向上テクニック 〜 保守性と処理時間のバランスを考慮 〜
  配列内にキーが存在するかを素早く調べる
  効率的なループ処理のテクニック
  文字列フィールドの取り出しテクニック
  はたしてパフォーマンスは上がったか? 〜 ベンチマークの方法 〜
コラム データの区切り文字にはなにがよい?
第八章 ホスティングサーバで行うアクセス解析
八ノ壱  どこまでわかるか?訪問者プロファイルの解析
  はじめに
  環境変数
  REMOTE_HOST が使えないサーバでホスト名を取得する
  OS を解析する
  Web ブラウザを特定する
  Web ブラウザの指定言語を取得する
  リンク元 URL を取得する
八ノ弐  アクセス解析プログラムの活用 〜 ログから覗くビジターの素顔 〜
  概要
  Apache ログフォーマット
  ログ生成 CGI の作成
  ログをビジュアルに表示するには? 〜 ツールの活用 〜
第九章 その他の重要な技法
九ノ壱  変数の局所化
  概要 〜 my と local を上手に使い分ける 〜
  my
  local
九ノ弐  タイムアウト処理
  概要
  実装方法
九ノ参  日付・時間の処理
  月末日を算出する
  存在する日付かどうかをチェックする
  休日かどうかをチェックする
  誕生日から現在の年齢を算出する
コラム ファイルテスト演算子の活用 (1)
第拾章 堅牢なセキュリティを確保する
拾ノ壱  入力値のチェックを厳密に
  はじめに
  JavaScript に頼らない
  OS コマンドの実行に注意
  open 関数に御用心
  タグを無効にする(サニタイジング)
拾ノ弐  ホスティングサーバでのセキュリティ対策
  アクセス制限は大丈夫?
  .htaccess によるアクセス制限
拾ノ参  パスワードの保護
  概要
  crypt 関数による暗号化と照合を使いこなす
付録
付録ノ壱  Windows XP に Active Perl をインストール
付録ノ弐  Windows XP に Apache を導入・設定
付録ノ参  Red Hat Linux 系での CGI 動作環境

戻る

会社案内 | 特定商取引法に基づく表示 | プライバシーポリシー | 当サイトへのリンクについて | お問い合わせ