themeが読み出せないサーバ

Infoseek iswebライトなどのサーバでは、cgi-bin 以下に設置しないと cgi が動作しない上、theme などの CSS ファイルがうまく読み出せないようです。その場合の対策を書きます。

theme/, public/ の設置ディレクトリを変更する

標準では、RSSなどのデータやテーマ(CSS見た目ファイル)は adiary と同一のディレクトリに置くようになっています。一部のサーバなどでは cgi-bin 以下にこれらのファイルが置けないようになっているのでこれを変更します。

例えば該当のサーバで、cgi-bin にしか cgi ファイルを置けないとすれば次のように adiary を設置します。

自分のwwwディレクトリ
  + cgi-bin
    + adiary
       + __chche/
       + data/*
       + diary.skel/*
       + info/*
       - adiary.cgi
       - adiary.conf.cgi
       - (略)
  + adiary
    + public/*
    + theme/*
  • 本体 http://---/cgi-bin/adiary/adiary.cgi
  • テーマ http://---/adiary/theme/

という状況です。

要するに adiary のファイル群の中から public/theme/ のみを違う場所に移動します。パーミッションなどはマニュアルどおりに設定してください(__chche, data/, public/ のパーミッションを0777などに)。

続いて adiary.conf.cgi を開き、次の場所を設定します。

# 公開のデータディレクトリ
<$constant(public_dir) = '../../adiary/public/'>
<$constant(theme_dir)  = '../../adiary/theme/'>

これで通常動くはずですが、問題が起きた場合はこの記事にコメントでもください。

注意

テーマ選択済のブログがあるとき、テーマディレクトリを移動すると一時的にテーマが適用されなくなります。