| Home >スクリプト紹介 >Diary Note |
- 画像アップ式日記帳 -
- オリジナルスクリプト機能的な特長
- 画像を自由にアップロードできる日記システムです。
- 1つの書き込みに対して3枚まで画像をアップロードすることができます。
- 画像を自動縮小し、閲覧を軽くすることができます(要:Image::Magick)。
- 日記の書き込み、修正、削除を、ウェブ上から自由に行うことができます。
- 1日あたりに書き込む記事数に、制限はありません。
- 全画面がテンプレート式のため、自由にレイアウトやデザインを変更することができます。
サンプル/ダウンロード
展開ファイル内容
●ダウンロード後、解凍 します。解凍すると以下のファイルが展開されます。
diary.cgi ---------------- 日記プログラム init.cgi ----------------- 設定ファイル admin.cgi ---------------- 管理用プログラム check.cgi ---------------- 動作チェック用プログラム lib/CGI/Minimal.pm ------- データ受理モジュール [配布元] lib/thumb.pl ------------- 画像縮小モジュール lib/CGI/Session.pm ----------- セッション管理モジュール [配布元] lib/CGI/Session/*.pm --------- セッション管理モジュール [配布元] lib/Digest/SHA/PurePerl.pm --- 暗号化モジュール [配布元] lib/login.pl ----------------- ログインモジュール lib/Calendar/Japanese/Holiday.pm ----------------- 祝日の一覧取得、祝日判定、祝日名の取得ができるPerl モジュール [配布元] data/ses --------------------- セッションディレクトリ (管理モード) data/pwd --------------------- パスワードディレクトリ(回数カウント用) (管理モード) data/pass.dat ---------------- パスワードファイル (管理モード) data/ -------------------- データディレクトリ upl/ --------------------- アップロード画像ディレクトリ data/*.dat --------------- データファイル data/log ----------------- ログディレクトリ tmpl/*.html -------------- テンプレートファイル img/ --------------------- アップロードディレクトリ img/icon/*.gif, *.png ---- アイコン画像 [配布元サイト : famfamfam] cmn/diary.css ------------ スタイルシートファイル cmn/admin.css ------------ スタイルシートファイル(管理モード) cmn/*.png ---------------- アイコンファイル lightview-3.5.1/ --------- jQuery lightview-3.5.1プラグインディレクトリ(画像拡大表示) [配布元]
ディレクトリ構成例
●全体のディレクトリ構成とファイル位置の設置例は以下のとおりです(かっこ内はパーミッションの設定値)。
ディレクトリ構成例
public_html / index.html (トップページ等)
|
+-- diary / diary.cgi [755]
| admin.cgi [755]
| check.cgi [755]
| init.cgi [644]
|
+-- lib / thumb.pl
| | holiday.pl
| | login.pl
| |
| +-- Calendar / *.*
| +-- CGI / *.*
| +-- File / *.*
| +-- Digest / *.*
|
+-- cmn / *.png
| *.gif
| diary.css
| admin.css
|
+-- data [777] /
| |
| +-- log [777] /
| +-- pwd [777] /
| +-- ses [777/ /
|
+-- img [777] /
|
+-- tmpl / *.html
|
+-- lightview-3.5.1
|
+-- css
+-- js
設定修正
●init.cgi をエディタで開いて以下の箇所を修正します。
- $cf{thumbnail} = 0;
- (画像を自動縮小する場合は「1」とします。これにより大きな画像でも縮小されるため、閲覧速度が軽減されます。ただし、サーバ側でImage::Magickが利用できることが条件です。Image::Magickの可否は「check.cgi」でチェックすることができます。)
- $cf{cgi_title} = '気まぐれ日記';
- (日記のタイトル名です。お好きな文字列に変更します)
- $cf{sort_day} = 0;
- (月内の日記記事の並び順です。昇順で0を、降順で1を指定します)
- $cf{imgdir} = './img';
- (画像ディレクトリのサーバパスを指定します。フルパスで記述する時は / から記述します)
- $cf{imgurl} = './img';
- (画像ディレクトリのURLパスを指定します。フルパスで記述する時は http:// から記述します)
- $cf{max_failpass} = 5;
- (管理パスワードの最大間違い制限を指定します。この回数以上になるとログインがロックされます。
※運用の注意点は右のリンクをご覧ください: 管理パスワードについて) - $cf{lock_days} = 14;
- (管理パスワードのロック期間:自動解除を日数で指定。この値を 0 にすると自動解除しません。
- #!/usr/local/bin/perl
- (プロバイダで定められたPerlへのパスを指定します)
パーミッション
| ファイル名 | パーミッション | 転送MODE | |
|---|---|---|---|
| 一般サーバ | suEXEC CGIWrap |
||
| diary.cgi admin.cgi check.cgi |
755 or 705 | 701 or 700 | Ascii |
| init.cgi | 644 or 604 | 600 | Ascii |
|
lib/Digest/SHA/PurePerl.pm lib/Calendar/Japanese/Holiday.pm lib/login.pl lib/thumb.pl lib/CGI/ lib/File/ tmpl/*.html |
- | - | Ascii |
| imgディレクトリ | 777 or 707 | 755 or 705 | - |
| dataディレクトリ | 777 or 707 | 700 | - |
| data/pwdディレクトリ data/sesディレクトリ data/logディレクトリ |
777 or 707 | 700 | - |
| cmn/*.gif cmn/*.png |
- | - | Binary |
| cmn/diary.css cmn/damin.css |
- | - | Ascii |
| lightview-3.5.1/*.* lightview-3.5.1/css lightview-3.5.1/js | - | - | Ascii |
以上、作業が完了したら「チェックモード」で動作チェックを行ないましょう。
「check.cgi」に直接アクセスすることで、簡易的なチェックを行うことができます。なお、動作チェック後はcheck.cgiはファイル削除しておきます。
改造点Date:2022/02/18
スマホ画面に対応したレスポンシブデザインとした。
祝日を Calendar::Japanese::Holiday モジュール対応とした。
HTML形式をHTML5に準拠した。
管理画面用の認証機能を強化した。
(ID・パスワード式、パスワード暗号式、一定回数以上でログインをロック等)
Date:2016/10/25
変更点Date:2016/10/25
デザイン(一部カラーリングなど)
バグ修正Date:20**/**/**
バージョンアップ (オリジナルバージョンアップに伴う)Date:2022/02/11
Ver: 5.0 →Ver: 6.0
[オリジナルバージョンアップ内容]
スマホ画面に対応したレスポンシブデザインとした。
HTML形式をHTML5に準拠した。
祝日を Calendar::Japanese::Holiday モジュール対応とした。
管理画面用の認証機能を強化した。
(ID・パスワード式、パスワード暗号式、一定回数以上でログインをロック等)


