FTPによるファイル送信時の注意
jcode.pl と unicode.pl は「バイナリ」で転送してください。
アスキーとかテキストとかで転送するとファイルの一部が壊れる可能性があります。
これ以外のファイルは改行コードを転送先OSに合わせるため、アスキーかテキストで転送してください。
UNIX/Linuxの場合には、ファイルにパーミッション(許可情報)を設定する必要があります。
サーバーによって異なることもありますが、一般的には転送後に以下のように設定してください。
- 拡張子が cgi であるものは 755
- config.cgi, cssconf.txt, design.css のように cgi が書き換えるファイルは 666
- その他のファイルは 644
- ディレクトリはすべて 755
Perlのパスの設定
#!/usr/local/bin/perl
この行を RingBlog を使うサーバーに合わせて修正してください。どのように設定するかは プロバイダの指示にしたがってください。
設定ファイル
v.2.2 から設定ファイルが 2本に分かれています。
これらの設定ファイルは、書き込み可になるようにパーミッションを設定してください。
- config.cgi
ブログの基本ディレクトリに置く。
ファイルの拡張子が .cgi になっていますが、実際にはスクリプトではなくテキストファイルです。 .txt だと外部から内容を読まれる可能性があるため、このようにしています。
サーバー設定、ユーザー設定、題名、レイアウトなどのそのブログ固有の設定を保存します。
- cssconf.txt
画面設定の内容を保存。
design.css(スタイルシート)とともに、skinディレクトリの該当スキン名ディレクトリに置く。
インストール
- blog.cgi
ブログスクリプト本体 - tb.cgi
トラックバック受信スクリプト
以下の例では < >で囲まれたものはディレクトリを意味します。
なお、設置ができたら操作説明を参照して、管理者パスワードの設定と メンバー登録をしてください。
CGIディレクトリとデータディレクトリの区別がない場合です。
すべてのファイルを同じディレクトリに置いてください。
| /home | / | user | / | public_html | / | blog | / |
blog.cgi tb.cgi config.cgi index.html <img> <data> <template> <skin> <log> |
この場合には何も設定しなくても動くはずです。
トラックバックURLやRSSファイルのURLが正しければ、そのままでいいでしょう。
基本となるURLを環境変数から得ますが、サーバーによっては公開しているのとは別の内部的URLに
なってしまうことがあります。トラックバックURLやRSSファイル、CSSファイルのURLやトラックバックURLが外部に見せたいものでは
なくなってしまうわけです。これが原因でCSSファイルを読めない場合には、ブログは起動するものの
画面の色やレイアウトが反映されずにバラバラになります。
そういう場合には、
config.txt の base_url を blog.cgi, config.txt があるディレクトリのURLに書き換えてください。
http:// から始めて、最後に / をつけないでください。
(module/Init.pm の先頭部分のパスやURL設定はコメントのままにしておいてください)
例) base_url=http://server.name/user_name/blog
blog.cgiと同じディレクトリに置く index.html は http://ringworld.x0.com/blog/ のように
blog.cgi を指定しなかった場合に、ディレクトリリストを表示せず blog.cgi を呼び出すためのものです。
なくても問題はありませんが、セキュリティのため置いておくことをすすめます。
例として以下のようにします。
|
module/Init.pm の先頭部分にある下記項目に設定を記入してください。$*_url はディレクトリの URL、$*_dir はディレクトリのパスです。 (同じディレクトリでも URL と内部パスとは表記が違うことに注意)
以下は例ですが、自分の環境に合わせてください。
$base_dir = "/home/user/public_html/blog";
$base_url = "http://SERVER/blog";
$cgi_url = "http://SERVER/cgi-bin/ringblog";
$template_dir = "/home/user/public_html/blog/template";
$base_urlには config.cgi があるディレクトリへの URL
$cgi_urlには blog.cgi があるディレクトリへの URL
$template_dirにはスタイルシートテンプレートがあるディレクトリへのパス
例として以下のようにします。
|
|||||||||||||||||||||||||||||||||||||||||||||
スタイルシートテンプレートは全ユーザーが同じものを使うことになるので、各ユーザーのディレクトリ ではなく、共通で使えるデータディレクトリに置きます。
module/Init.pm の先頭部分にある下記項目に設定を記入してください。$*_url はディレクトリの URL、$*_dir はディレクトリのパスです。
以下は例ですが、自分の環境に合わせてください。
$base_dir = "/home/users";
$base_url = "http://SERVER/users";
$cgi_url = "http://SERVER/cgi-bin/ringblog";
$template_dir = "/home/user/public_html/blog/template";
$base_urlには各ユーザーのデータディレクトリが入っているディレクトリへの URL
$cgi_urlには blog.cgi があるディレクトリへの URL
$template_dirにはスタイルシートテンプレートがあるディレクトリへのパス
起動は以下のようにします。
http://SERVER/cgi-bin/ringblog/blog.cgi?uwd=USER_DIRECTORY
USER_DIRECTORYは上の例でいえば user_A, user_B, user_C などです。
このようにディレクトリを指定すれば、そこにあるconfig.cgiにしたがった動作となります。