構築・運用‎ > ‎NoArch‎ > ‎

CMS/CMF の構築・設定

CMS (Content Management System) / CMF (Content Management Framework) について。

参考 ∥ CMSレジュメ [CMSレジュメ]

Joomla

とっつきはよさそうです。以下、バージョン 2.5 に関する記述です。

インストール、セットアップ

右記より入手 ∥ Joomla!

対応は MySQL のみ。データベースを作成。

$ mysql -u root -p -e "CREATE DATABASE joomla"

DocumentRoot 下の "joomla" へでも展開してから、オーナーを変更。そして http://localhost/joomla/installation/ へアクセス。

データベースタイプMysql
ホスト名127.0.0.1 ("localhost" にすると、TCP 接続をしようとするようだ?)
ユーザ名root (本当はダメです)
パスワードXXXXXXXX
データベース名joomla

http://localhost/joomla/ でトップページ、http://localhost/joomla/administrator/ で管理画面。

"configuration.php" を削除し "installation" ディレクトリを元に戻せば、再度の設定が可能。

メモ

一般ユーザ用の「サイト」が「フロントエンド」(http://localhost/joomla/), 「管理画面」用のサイトが「バックエンド」(http://localhost/joomla/administrator/)。

実運用で何かやる時は、「サイト」→「グローバル設定」で「メンテナンスモード」に落としてから。

エクステンションの分類 ∥ エクステンションとは? - Joomla!の道しるべ:

コンポーネント本文を表示するエクステンション(設定は、以下の他エクステションからは独立)
モジュール本文以外の部品を表示するエクステンション
プラグインUI を持たないエクステンション
テンプレートデザインを提供するエクステンション
ランゲージ各言語対応を提供するエクステンション

管理メニュー総ざらい

Joomla もまた、OSS のウェブシステムにありがちな例にもれず、機能は充分すぎるほどに豊富なのですが、野放図に拡張されてしまったために構造・用語とも分かりづらいものになっていると思われます。適宜言いかえつつメモをします。

  • 「サイト」
    • 「マイプロファイル」: バックエンドログイン中のユーザごとのプロファイル。管理コンソールに入れない人はどうするんだ? どうもまだ、細分化された権限のモデルがよく分からない
    • 「グローバル設定」
      • 「サイト」
        • 「URL リライトの使用」: “index.php” には出て欲しくないので、使用。.htaccess を有効に
  • 「メニュー」: 「メニューアイテム」(コンポーネント・インスタンスの内、名前(「エイリアス」)をつけられたもの)のリスト
  • 「コンポーネント」: コンポーネントもエクステンションなのだが、偉いので独立メニューを与えられている
  • 「エクステンション」
    • 「モジュール管理」: ヘッダやメニュー部分(テンプレートの「プレビュー」で表示されるホルダー「モジュールポジション」)に収まる、UI を有する小パーツを提供するエクステンションが「モジュール」です。ここに並んでいるのは、モジュール・クラスではなく、モジュール・インスタンスです
    • 「テンプレート管理」
      • 「スタイル」: テンプレートをクラスとすれば、それに対する固有部分(パラメータ)を、もしくはそれを有する各インスタンスを「スタイル」と呼称するようだ。変な用語だ
        • 「スタイルの編集」
          • 「デフォルト」: ? 言語のデフォルトが「すべて」とはどういう意味だ?
          • 「メニューの割り当て」: 「メニューアイテム」(名前つきコンポーネント・インスタンス)には、個々にスタイルを指定することが可能になる
          • 「詳細オプション」: スタイル・インスタンスのパラメータ
      • 「テンプレート」: 導入済みテンプレートの一覧
        • 「~の詳細とファイル」: テンプレートのレベルで HTML や CSS をイジるには、ここから
  • 「ヘルプ」

パラメータ: 右の「詳細オプション」

Drupal

とっつきづらいが、スジはよさそうだ。

インストール、セットアップ

Drupal - Open Source CMS | drupal.org

対応は、PostgreSQL, MySQL, SQLite。

$ mysql -u root -p -e "CREATE DATABASE drupal"

Ownership。

$ sudo ln -sf drupal-7.14 drupal
$ sudo chown -R _www:wheel drupal drupal-7.14/

http://localhost/drupal/ → http://localhost/drupal/install.php。同様、127.0.0.1 で。

WordPress

おなじみ、WordPress。

インストール、セットアップ

WordPress | 日本語

$ mysql -u root -p -e "CREATE DATABASE wordpress"

Ownership。

$ sudo chown -R _www:wheel wordpress/

http://localhost/wordpress/

DokuWiki

ja:dokuwiki [DokuWiki]

初回は、~/install.php へ。install.php の削除。

Time delay before indexing10
Allow embedded HTMLChecked
Allow embedded PHPChecked
Enable Mediarevisions?Unchecked
Use nice URLs.htaccess
useslashUse slash as namespace separator in URLsChecked

ユーザデータとしては、data/{pages,media} だけバックアップすれば良いか? おこのみで、設定やユーザも残したければ conf を、更新履歴ならば data/{meta,media_meta,attic,media_attic} も。

for i in ~/priv/dokuwiki/data/*
do
  ln -sfT $i $(basename $i)
done

共有は、ユーザデータだけでいいか。CSS 等を更新したら、調整してから都度 sync すれば良い。

rsync -avzr $document_root/lib/ ~:/var/www/lib

index はバックアップしたくないのだが、re-index は可能? 可能、以下のように。もっとも、再表示すれば “external edit” 扱いで、そのページについては index される。

cli [DokuWiki]

$ sudo bin/indexer.php -c
$ sudo chown -R _www:wheel data/index

Google Apps

…違うような気もするが、通ずるような気もするので、メモについては、ここに書く。

Headline

Comments