Home >スクリプト紹介 >Cosmo Navigator |
- URL検索システム -
Cosmo Navigator v 6.0 (URL検索システム)
- オリジナルスクリプト機能的な特長
- 全画面が(CGI画面ではなく)HTML形式のホームページ検索システムです。
- URLデータの登録方式は、「管理者限定タイプ」と「ユーザによる自由登録タイプ」の2種類を選択することができます。
- カテゴリをメインとサブの階層式に分類してデータ登録します。
- 検索のためのキーワードは複数指定、AND, OR の条件選択などが可能です。
- 管理者により、おすすめアイコンを表示することができます。
- 新規登録されたURLは一定期間newアイコンを自動表示します。
- 新規登録時に内容をメール通知することができます。
- 全画面がテンプレート式のため、自由にレイアウトやデザインを変更することができます。
- スパム対策用に画像認証機能を使用することができます。
サンプル/ダウンロード
展開ファイル内容
●ダウンロード後、解凍 します。解凍すると以下のファイルが展開されます。
index.html ----------------------- 初期画面 html/ ---------------------------- HTMLディレクトリ sys/navi.cgi --------------------- 検索プログラム sys/init.cgi --------------------- 設定ファイル sys/admin.cgi -------------------- 管理プログラム sys/edit.cgi --------------------- 登録リンク編集プログラム sys/captcha.cgi ------------------ 画像認証用プログラム sys/check.cgi -------------------- 動作チェック用プログラム sys/lib/jacode.pl ---------------- 文字コード変換モジュール [入手元] sys/lib/pngren.pl ---------------- PNG連結ライブラリ [配布元サイト閉鎖中 : 桜月氏作成] sys/lib/Crypt/RC4.pm ------------- 暗号化モジュール [配布元] sys/lib/GD/SecurityImage.pm ------ 画像認証作成モジュール [配布元] sys/lib/Digest/SHA/PurePerl.pm --- 暗号化モジュール [配布元] sys/lib/CGI/Session.pm ----------- セッション管理モジュール [配布元] sys/lib/CGI/Session/*.pm---------- セッション管理補助プログラム sys/lib/login.pl ----------------- 管理モード入室認証プログラム sys/lib/thumb.pl ----------------- 画像縮小モジュール sys/lib/captcha.pl --------------- 画像認証作成モジュール sys/lib/captsec.pl --------------- 画像認証作成ファイル sys/lib/CGI/Minimal.pm ----------- データ受理モジュール [配布元] sys/lib/CGI/Minimal.pod ---------- データ受理モジュール [配布元] sys/lib/CGI/Minimal/*.pm --------- データ受理モジュール [配布元] sys/data/ses --------------------- セッション一時ファイル格納ディレクトリ sys/data/rankcnt ----------------- ランキングデーター格納ディレクトリ sys/data/pwd --------------------- パスワードディレクトリ sys/data/data.dat ---------------- 登録リンクデータ格納ディレクトリ sys/data/num.dat ----------------- 登録リンクナンバー格納ディレクトリ sys/data/pass.dat ---------------- 管理モード認証パスワードファイル sys/data/reset.dat --------------- ランキングデータリセットデータ sys/data/set.dat ----------------- 基本設定ファイル sys/data/tmp.dat ----------------- 新規登録テンポラリーファイル(管理者の承認後に表示) sys/tmpl/*.html ------------------ テンプレートファイル sys/bin/*.ttf -------------------- フォントファイル(画像認証用) sys/bin/*.png -------------------- 画像ファイル(画像認証用) banner/ -------------------------- バナー格納ディレクトリ cmn/ ----------------------------- スタイルシートやアイコンなどの共有ディレクトリ cmn/navi.css --------------------- スタイルシートファイル(本体用) cmn/accordion.css ---------------- スタイルシートファイル(MENU用) cmn/admin.css -------------------- スタイルシートファイル(管理モード用) cmn/catecnt.css ------------------ スタイルシートファイル(カテゴリー用) cmn/easyselectbox.css ------------ スタイルシートファイル(セレクトボックス用) cmn/form.css --------------------- スタイルシートファイル(投稿フォーム用) cmn/*.js ------------------------- javascriptファイル cmn/globe.gif -------------------- ランキングタイトルアイコン画像 cmn/new.gif,recom.gif ------------ アイコン画像
ディレクトリ構成例
●全体のディレクトリ構成とファイル位置の設置例は以下のとおりです(かっこ内はパーミッションの設定値)。
ディレクトリ構成例
public_html / index.html (トップページ) | +-- navi / navi.cgi [755] | init.cgi [644] | admin.cgi [755] | edit.cgi [755] | captcha.cgi [755] | check.cgi [755] | | +-- sys | | | +-- lib / jacode.pl 他 | | | +-- Digest/SHA/PurePerl.pm | +-- Crypt / *.* | +-- GD / *.* | +-- CGI / Minimal.pm | | Minimal.pod | +-- CGI / Minimal / *.pm | +-- CGI / Session.pm | +-- CGI / Session / *.pm | | | data [777] / data.dat [666] | | num.dat [666] | | reset.dat [666] | | pass.dat [666] | | set.dat [666] | | | +-- pwd / [777] | +-- ses / [777] | +-- rankcnt / [777] | | | tmpl / *. html ... テンプレートhtml | | +-- cmn / *.gif | navi.css | *.js | accordion.css | admin.css | catecnt.css | easyselectbox.css | form.css | menu_images / *.png | | +-- html / *. html ... 登録リンク閲覧ページ +-- banner[777] /
設定修正
●init.cgi をエディタで開いて以下の箇所を修正します。
URLパスはご自分の環境に合わせて必ず修正して下さい。(当サイトのサンプルのURLが入力されています)
- $cf{rooturl} = 'https://www.transformsite.com/sample/data/navi6';
- $cf{rootdir} = '..';
- (上段はhttpからnaviディレクトリのURLパスを記述します。下段はnavi.cgiからの相対パスを記述しますが、通常はこのままでOKです。)
- $cf{sysurl} = 'https://www.transformsite.com/sample/data/navi6/sys';
- (httpからsysディレクトリのURLパスを記述します)
- $cf{cgi_title} = "URL検索データベース";
- お好きなタイトル名に変更します
- $cf{reset} = 0;
- カウンタを一定時間毎にリセットする場合の設定です。
リセットせず累計的にカウントを取る場合は「0」を、毎週ごとにリセットするなら「1」を、10日ごとにリセットなら「2」を、毎月ごとにリセットならば「3」とします - $cf{reset_type} = 0;
- カウンタリセット方式の設定です。
通常はopendir関数式の「1」にします。
リセット時にエラーが出る場合やうまくリセットできないようであれば「2」とします - $cf{upldir} = "$cf{rootdir}/banner";
- アップロードするバナーのディレクトリをサーバパスで指定します。フルパスで指定する場合は / から始まるパスになります
- $cf{uplurl} = "https://www.transformsite.com/sample/data/navi6/banner";
- アップロードするバナーのディレクトリをURLパスで指定します。フルパスで指定する場合は http:// から始まるパスになります
- $cf{nobanner} = 'https://www.transformsite.com/sample/data/navi6/cmn/nobanner.gif';
- # リンクバナーが無い場合の画像
- $cf{homepage} = 'http://www.xxx.xxx/index.html';
- 戻り先のURLを指定します
- $cf{pg_max} = 10;
- 一般ページの画面当り表示件数を指定します
- $cf{new_mark} = 30;
- 登録後新着アイコンを表示する日数を指定します
- $cf{use_captcha} = 1;
- スパム対策に画像認証を使用する場合の設定です。
使用しない場合は「0」、使用する場合でライブラリー版を使用する場合は「1」、
モジュール版を使用する場合は「2」とします
※画像認証(投稿キー機能)についての詳細は右記ページをご覧ください。: 画像認証について - $cf{max_failpass} = 5;
- (管理パスワードの最大間違い制限を指定します。この回数以上になるとログインがロックされます。
※運用の注意点は右のリンクをご覧ください: 管理パスワードについて) - $cf{lock_days} = 14;
- 管理パスワードのロック期間:自動解除を日数で指定
→ この値を 0 にすると自動解除しません。
- #!/usr/local/bin/perl
- (プロバイダで定められたPerlへのパスを指定します)
パーミッション
ファイル名 | パーミッション | 転送MODE | |
---|---|---|---|
一般サーバ | suEXEC CGIWrap |
||
navi.cgi admin.cgi edit.cgi captcha.cgi check.cgi |
755 or 705 | 701 or 700 | アスキー |
data/data.dat data/reset.dat data/num.dat data/pass.dat data/set/dat data/tmp.dat |
666 or 606 | 600 | アスキー |
lib*.pl CGI / Minimal.pm CGI / Minimal.pod CGI / Minimal / *.pm CGI / Session.pm CGI / Session / *.pm lib/*.pm cmn/nsvi.css cmn/accordion.css cmn/admin.css cmn/catecnt.css cmn/easyselectbox.css cmn/form.css tmpl/*.html |
- | - | アスキー |
sys/dataディレクトリ | 777 or 707 | 701 or 700 | - |
cmn/*.gif cmn/*.css |
- | - | バイナリー |
banner/ | 777 or 707 | 701 or 700 | - |
systmpl/*.html | - | - | - |
以上、作業が完了したら「チェックモード」で動作チェックを行ないましょう。
「check.cgi」に直接アクセスすることで、簡易的なチェックを行うことができます。なお、動作チェック後はcheck.cgiはファイル削除しておきます。
改造点
Date:2022/05/25
全面リニューアルし、全画面をHTML化した。
スマホ画面に対応したレスポンシブデザイン対応とした。
文字コードをUTF-8へ変更した。
登録リンク編集機能を存置した。(オリジナルでは削除された)
ランキング機能を存置した。(オリジナルでは削除された)
アップデートのために、バックアップするファイル
「log」フォルダ内にある「log.cgi,num.dat,reset.dat」
「log/data もしくはlog/cnt」フォルダ内にある「*.datファイル」
「banner」フォルダ内にある「*.jpg, *.png, *.gifファイル」
(logフォルダ内にあるファイルは新しい「navi v6.0」のsys/dataフォルダ内にコピーする)
ログ互換ツールを用意しました。
ログ互換ツールを使用後、管理モードにある「HTML再構築」を実行する。
スマホ画面に対応したレスポンシブデザイン対応とした。
文字コードをUTF-8へ変更した。
登録リンク編集機能を存置した。(オリジナルでは削除された)
ランキング機能を存置した。(オリジナルでは削除された)
アップデートのために、バックアップするファイル
「log」フォルダ内にある「log.cgi,num.dat,reset.dat」
「log/data もしくはlog/cnt」フォルダ内にある「*.datファイル」
「banner」フォルダ内にある「*.jpg, *.png, *.gifファイル」
(logフォルダ内にあるファイルは新しい「navi v6.0」のsys/dataフォルダ内にコピーする)
ログ互換ツールを用意しました。
Cosmo Navigator v5.24 (改造版) からCosmo Navigator v6.0 (改造版) に対応させるためのログ変換ツール
ツール使用方法はcgi内に記載
Cosmo Navigator v5.24 (オリジナル) からCosmo Navigator v6.0 (改造版) に対応させるためのログ変換ツール
ツール使用方法はcgi内に記載
ログ互換ツールを使用後、管理モードにある「HTML再構築」を実行する。
Date:2016/05/31
各主カテゴリーに、カテゴリ別登録数カウント表示を追加。(主カテゴリータイトル右横に表示)
登録サイト表示枠内、サイトタイトル枠デザインを変更した。
「newアイコン」「オススメアイコン」「サイトURLアイコン」変更。
登録サイト表示枠内、サイトタイトル枠デザインを変更した。
「newアイコン」「オススメアイコン」「サイトURLアイコン」変更。
Date:2016/05/23
デザインを一新した。
メニューを改良した。
投稿フォームを改良した。
スタイルシートの位置を変更した。
メニューを改良した。
投稿フォームを改良した。
デザインを一新した。
バナーファイル選択時に、選択した画像ファイルのサムネイルを表示。
スタイルシートの位置を変更した。
共有フォルダ(cmn)を新設して、スタイルシートやアイコンを格納。
Date:2014/05/11
CSSファイルの位置を変更した。
HTML画面をXML準拠とした。
バナー登録機能追加。
HTML画面をXML準拠とした。
バナー登録機能追加。
登録出来るバナー画像は「gif,jpeg,png」になります。
サイズは横88px 縦31px{init.cgiにて設定}
バナーを登録しない場合は「No Banner」というバナーが表示される
バナーをクリックすることにより登録サイトに移動可能
管理モードも対応
変更点
Date:2014/05/11
デザイン(一部カラーリングなど)
バグ修正
Date:2023/03/26
ランキング内カテゴリー(主,副)のリンクを開こうとするとエラーになる不具合を修正。
Date:2023/03/26
新規登録においてバナーが正常にアップロード出来ない不具合を修正。
バージョンアップ (オリジナルバージョンアップに伴う)
Date:2022/05/14
Ver 5.24(dl:998) →Ver 6.0
Date:2014/05/11
Ver 5.23 →Ver 5.24