Nucleus CMS マニュアル (v3.71)
はじめに:

目次

Nucleus とはback to top

Nucleus とはコンテンツマネジメントシステム(Contents Management System : 略してCMS)ツールです。PHPで書かれており、blogサイト運営に強力に役立ちます。主な特徴は以下の通りです:

Nucleusのインストールには以下の環境が必要です: (不明な点はサーバ管理者にお尋ね下さい)

Nucleus はサイト構築にあたって痒いところに手が届くように設計されています。HTMLに関する知識が全くなく、簡単にblogサイトを持ちたい人は インストール不要のホスティング型のblogサービス(Yahoo! JAPANの該当カテゴリ参照)を利用した方が良いかもしれません。

ライセンスについて back to top

Nucleus: PHP/MySQL Weblog CMS (http://nucleuscms.org/)
Copyright (C) 2002-2018 The Nucleus Group

このプログラムはフリーウェアです。 フリーソフトウェア財団(the Free Software Foundation)が公表したGNU一般公共使用許諾(GNU General Public License)の 「バージョン2」或いはそれ以降の各バージョンの中からいずれかを選択し、 そのバージョンが定める条項に従ったうえで、本プログラムの再配布・改変を認めています。

このプログラムがご自身の使用目的に合ったものであれば幸いです。 しかしながら 、商品性および特定目的に対する適合性に関する黙示的な保証を含み、 いかなる保証もいたしません。 詳細につきましてはGNU 一般公有使用許諾書をお読みください。

このプログラムと併せてGNU General Public Licenseのコピー をお受け取りのはずかと思いますが、お受け取りになられていない場合は、こちらにアクセスしてコピーをお受け取りください

付属するライブラリ等の使用にあたり、それらの各ライセンスに同意する必要があります。

このソフトウェアを所有することは、これらの条件に同意することを意味します。これらの条件に同意されない方は、所持するこのソフトウェアのコピーを削除してください。

インストールガイド back to top

注意: 旧バージョンをすでにご使用の方は、Nucleus Webサイトのアップグレードガイドの方をご覧下さい。

ほんの数ステップでインストールは完了します。手順は以下の通り:

1. 圧縮ファイルの解凍

ダウンロードしたパッケージファイルを解凍します。生成されるディレクトリ構成は以下のようになっているかをご確認下さい。(*はディレクトリ以下にファイルがある事を意味します)

/*(サイト表示用メインファイル)
/extra/*(fancy URL用ファイルなど特殊なファイル)
/install/*(インストール用ファイル)
/media/*(添付ファイル)
/nucleus/*(サイト管理用ファイル)
/nucleus/documentation/*(説明書)
/nucleus/forms/*(入力フォーム部品ファイル)
/nucleus/images/*(管理エリア専用画像ファイル)
/nucleus/javascript/*(javascripts スクリプト)
/nucleus/language/*(言語ファイル)
/nucleus/libs/*(Nucleus のコアライブラリ)
/nucleus/plugins/*(プラグインファイル)
/nucleus/styles/*(管理エリア専用cssファイル)
/nucleus/xmlrpc/*(XML-RPC インターフェイス用ファイル)
/skins/*(スキンファイル [読込み時にも使用])
補足:

2. サーバに転送

FTPソフトを使ってサーバに全部のファイルを転送します。拡張子が.phpのファイルは必ずASCIIモードで転送してください。モードを間違えると動作しません。

パーミッションの変更(やらなくてもOK):

  1. この段階で config.php のパーミッションを 666に変更しておくと、後のインストール手順を減らす事ができます。この手順をスキップした方は手動で config.php を編集するだけですのでどちらでも構いません。 (パーミッションの変更方法につきましてはパーミッションの変更ガイドを参照してください)
  2. 画像など添付ファイルを使用される予定のある方は、mediaディレクトリを作成してこのディレクトリのパーミッションを書き込み可能に変更してください。書き込み可能にしておかないとアップロードが正常に行えません。通常は 777 かと思います(パーミッションの変更方法につきましてはパーミッションの変更ガイドを参照してください)。
    (root 権限をお持ちの場合は、ディレクトリを httpd プロセスが動作しているユーザに chgrp してください。通常は httpd もしくはnobody で、ディレクトリは chmod 755 になるでしょう。)
  3. ファイル編集に SkinFiles プラグインをお使いになる場合は、/skins/ ディレクトリ以下にあるすべてのファイルとディレクトリのパーミッションを変更する必要があるでしょう。ファイルの編集を可能にするには、ファイルのパーミッションは 666 にしておくことになるでしょう(パーミッションの変更方法につきましてはパーミッションの変更ガイドを参照してください)。新しいファイルやディレクトリを作成できるようにするためには、親ディレクトリのパーミッションを 777 にしておくことになるでしょう。

3. /install/ディレクトリにアクセス

ブラウザを開いてサーバに転送した/install/ディレクトリにアクセスします。URLは下記のようになります。(www.yoursite.comyourpathの部分は読み替えてください)

	http://www.yoursite.com/yourpath/install/

表示されたページに必要入力事項を入力します。あらかじめ自動検知して入力済の部分がありますが確認をお願いします。送信後に次に行う手順が表示されますのでそれに従って作業してください。(最後にいくつかのファイルを手動でサーバから削除する作業が必要ですのでお忘れなく。)

注意: /install/ ディレクトリにアクセスした際、「If you see this text in your browser...」というテキストが表示されたり、 index.phpのダウンロードが促されたりした場合は、そのサーバではphpスクリプトは動作しません。当然、残念ながらphpスクリプトであるNucleusを運用することができません。

4. 完了

インストールが完了したらすぐにトップページにアクセスすることができます。インストール完了画面の一番下にリンクが自動表示されていますのでジャンプして確認してみてください。

セキュリティについて back to top

データベースのパスワード

NucleusはphpスクリプトからMySQLデータベースにアクセスしますので、phpスクリプト内にMySQLのパスワードを書き込んでおく必要があります。 複数ユーザーで使用するサーバの場合は100%安全ではないことをご了解下さい。また、ログイン名とログインパスワードを盗まれる可能性もあることもお知りおきください。phpスクリプトに重要な情報を埋め込んで使用する事の是非について調べたい方は詳しい方におたずね下さい。

この危険性はデータベースを使用するすべてのphpスクリプトに共通する問題です。通常はユーザー側で解決できる問題ではありません。100%安全ではないと言うことを念頭に置いておいて下さい。

クッキー

Nucleus ではログイン情報の保持にクッキーを使用しています。クッキーが盗まれ誰かにログインされる危険性があります。 クッキーを覗いただけではパスワードは推測できません (実際にはパスワードは暗号化して格納しています) が、残念ながら、盗んだクッキーを利用してログインユーザーを偽装することが技術的に可能ではあります。

メディアディレクトリ

添付ファイルを使用する際はメディアディレクトリのパーミッションを777にする必要があります。777にするという事は、そのサーバ上にいる誰もがそのディレクトリを操作できる権限を持つという事です。しかしながら、オンラインでPHPスクリプトからファイルをアップロードするためにはこの設定は必須です。代替案はありません。

パフォーマンスについて back to top

ほかのweblogツールとは異なり、Nucleusではあらゆる表示ページをサーバ上に保存しません。アクセスがあったURLを元にデータを呼出しその都度ページを生成して表示するという方法を採っています(動的ページ生成)。

この仕組みが原因でトラブルが起きる事はまずありません。1秒あたりものすごい数のアクセスのある大規模なサイトであれば動作に問題があるかもしれませんが、今のところはよくわかっていません。そこそこ大きなサイトで、1つのNucleusで30以上のblogを運用しているサイトでも特に問題点はないという報告を受けていることをご紹介しておきます。

コメント受付時のルール back to top

Nucleus では、コメントの性質を考えて以下のルールを設けています:

これらのルールを変更したい場合はコアファイルの書き換えが必要となります。

XML-RPC インターフェイス back to top

Nucleusの XML-RPC インターフェイスのURL:
http://www.yourserver.com/yourpath/nucleus/xmlrpc/server.php

XML-RPC とは、XMLを利用してデータを読み書きする規格です。難しく聞こえるかもしれませんが、このXML-RPCという規格を組み込んでいれば他のツールを使ってデータの読み書きが可能になるという事だけ覚えておいてください。

現在の所、Blogger APImetaWeblog APIMovable Type APIの3つの規格をサポートしています。この規格を使用した記事投稿ツールに興味のある方は、 WB Editor (Windows版:日本語対応) または Ecto (MacOS版:日本語対応不明) を使ってみてください。

このXML-RPC インターフェイスの呼出し方法につきましては、開発者向けドキュメントにて解説しています。 Nucleus - XML-RPC インターフェイスをご覧下さい。

困った時は (FAQ) back to top

Nuleusについて良く聞かれる質問をFAQとしてまとめました。質問される前にご一読下さい。大抵のケースでは解決できるのではないでしょうか。

このようなエラーが表示されるのですが: Cannot send headers. Headers already sent...
config.phpの冒頭と末尾に空白(スペース)が入っている場合によく起こります。<? の前、あるいは ?>よりも後にスペースが挿入されていないかどうか確認してください。このスペースを削除するとエラーは解消されます。また、同様に言語ファイルやインストールしているプラグインのファイルについても同じ事が起きますので確認してみてください。UTF-8で保存する場合はBOMを付けないでください。
インストール時に/install/ディレクトリにアクセスするとダウンロードを促されるのですが。
そのサーバはPHPプログラムに対応していません。残念ながらそのサーバでNucleusを運用することはできません。
トップページにアクセスすると「Connection Error」と表示されました。なぜですか?
Nucleusがデータベースサーバにアクセスできないことを意味しています。config.phpの最初で定義しているデータベース接続情報が正確かどうかをもう一度確認してみてください(パスワードがxxxxxxのままというケースがよくあります)。 また、本当にMySQLサーバがダウンしているのが原因かもしれません。
更新記録ファイルに更新情報が記録されないのですが。
更新記録ファイルを使うためにはファイルのパーミッションの適切な設定が必要です。またblog設定にて設定する前にこのファイルを置いておく必要があります(空のファイルを作成してアップロードを先にしてください)。この更新記録ファイルのパーミッションは666、このファイルがあるディレクトリは755としてください。 (パーミッションの変更方法につきましてはパーミッションの変更ガイドを参照してください)
XML-RPC インターフェイスを有効にしたくないのですが。
xmlrpc/ ディレクトリを削除するだけでOKです。何も問題はありません。
RSSの吐出しをしたくないのですが。
xml-rss.php ( xml-rss2.php , rsd.php ) を削除して、念のために「xmlrss」(「feeds/rss20」)という名前のスキン/テンプレートを削除してください。
転送量を削減したい。
  • PHPの設定: zlib拡張が有効になっているか確認してください。
  • apache設定: mod_deflateの設定を .htaccess に加えてください。
ある日突然、空白ページになったり、データベースのエラーが表示されるようになりました。
  • データベースのオーバーヘッドが増したり、インデックスが破損したりしている可能性がありますので、データベース管理ツールで、テーブルの「修復」および「最適化」を実行してください。
  • レンタルサーバーをお使いの場合は、サーバーのメンテナンス情報などで何らかのアップグレードがなかったか確認をしてください。

謝辞 back to top

これまでの開発の陰には以下の方々の協力があったことを忘れてはなりません。どうかご一読を。

作者

コアファイル改良

ライブラリなど

感謝

Nucleusが今日に至るのも、また、このほかのたくさんの方々の支援に支えられているからです。御礼申し上げます。