コンピュータ/ソフトウェア関連Tips

静的HTMLを生成できるCMS

作成日: Nov 2, 2011
カテゴリー: CMS タグ: CMS

個人用途の、静的HTMLを生成できるCMSについてまとめておく。(注: 2011年11月の情報なので古いです)

2011.11.5現在のまとめ: Movable Type, WordPress(+make-cache)、MODx Evolution、MODx Revolution、TYPO3、Plone、OpenCMSをインストールした結果、管理するのが1サイトのみなら、MODx Evolutionが一番要望に合致している。マルチサイトとなると、「これならいけるかも」というのがまだ見つからない。

2011.11.23追記: 自分が利用しているホスティングサービスで、Rubyが使えることを知って、tDiary+blogkitで普通のWebサイトを作成したのだが、すこぶる良い。便利便利。CMSで静的HTMLをローカルに作成して、それをサーバーにFTPで転送するより、サーバー側をプライマリにして、バックアップはローカルに作成した方が便利かも…と思うようになりつつある。

2014.02.23追記: Middlemanを使ってみた。このサイトも、Middlemanで再構築中。当面はMiddlemanで行こう。

2015.08.15追記: Hugoの存在を知り、乗り換え作業中です。

理想的CMS

筆者はMySQL等のデータベースを使用できないホスティングサービスを利用しているので、筆者にとって理想的なCMSとしては、WebRelease2、NOREN、ALAYAのように、FTPなどにより公開サーバーにHTMLファイル群を転送する方式。

(2011.11.3追記: NORENは、公開サーバーとの通信プロトコルがFTPではなく独自プロトコルだったかも)

現在自分がコンテンツを有しているサイトは3箇所なので、同一プロダクトで3以上のサイトを管理して欲しい。また、フリーソフトウェアのオンラインマニュアルを制作したりできたらいいな…と思うので、作成できるサイトの数には制限が無いのが良い。

現実的CMS

ま、相応の金をかければ、理想は叶うのだが、現実的には、CMS自身が存在するマシン内の領域にHTMLを生成し、それを自動/手動によりホストに転送する作業の組合せに落ち着くであろう。

先達の調査

この手のことは、誰か他の人が調査済だったり、類似案件を調査した資料の中に情報が含まれていたりする。例えば、 「企業で使えるオープンソースCMS一挙12種類解説」 http://web-tan.forum.impressrd.jp/e/2008/07/04/3283 2008年の情報であるが、これによれば、「静的ファイル出力」機能が 「機能あり(テンプレート等で対応含む)」はMODx、OpenCms、Typo3、島根県CMS、 「モジュール・プラグインで機能追加」はez Publish、Plone となっている。

ネット検索、及び自分で調査した結果

MTOS (Movable Type Open Source)

Movable Typeのオープンソース版。

個人利用なのでMovable Typeでもいけるか?と思ったが、

から、1つのMovable Typeで、Webサイトを1個、Webサイト内に複数のブログを作成できるようなので、複数のWebサイトを管理しようと思ったら、複数ライセンスが必要。2つ目からは、1サーバー(1ライセンス)当り63,000円必要となる。

MTOSに無くてMovable Typeにある機能の1つとしては「カスタムフィールド」が挙げられるが、プラグインで同等のことができる模様。なら、MTOSの方が良いか…。

Movable Type(MTOSではない)が生成するHTMLについては下記の記事を参照。

WordPress + make-cache

Movable Typeの静的HTML生成に近い動きをするとのこと。

実際に試して気付いたのだが、『wgetなどでダウンロードして相対パスに変換しなくても済むように、出力されるHTMLが相対パスであること』というのも自分にとっての必要事項であった。理由は、以下の検証記事参照。

MODx Evolution

実際に試して見たところ、希望に叶うかもしれない。以下の検証記事参照。

MODx Revolution

MODx Revolution 2.1.3-pl-ja をインストールしてみたのだが、MODx Evolutionにはあった、「htmlファイルとしてエクスポート」という機能がぱっと見では見当たらない。詳細は以下の記事参照。

ez-publish

ez-publishも実際に検証しようとしたのだが、ezpublish_community_project-2011.10-with_ezc.tar.gzをインストールしたところ、

Fatal error: eZ Publish did not finish its request

The execution of eZ Publish was abruptly ended. Contact website owner with current url and what you did, and owner will be able to debug the issue further(by enabling ‘display_errors’ and optionally ‘DebugOutput’).

というエラーが出た。2011.9版と2011.8版も試してみたが状況変わらず。動作検証は断念。

Plone

Ploneをインストールした。 http://plone-users-and-developers-in-japan.2352927.n2.nabble.com/plone-users-2031-td3579858.html の書き込みから、 http://plone.org/products/enpraxis.staticsite/ というのがあるのが分かったのだが、ファイルはリンク切れになっていて、ダウンロードできなかった。動作検証は断念。

PloneのWindows XPへのインストールは下記記事参照。

http://d.hatena.ne.jp/Fumio_Kawamata/20111108/CMS_Plone

TYPO3

Typo3による静的HTML生成については、 Static pages with TYPO3 http://www.typo3.org/fileadmin/t3n/articles/t3n_static_publish_english.pdf が参考になる。 (2011.11.4 追記: エクステンションを用いることにより、「静的HTML生成(上記資料中は”Static publish”)が出来る」ということでは参考になりましたが、実際にエクステンションをインストールするHowToという意味では、参考になりませんでした。)

TYPO3 Ver. 4.6.0を実際にインストールしてみた。

Extension Manager、Import Extensionsを表示して、Filter欄に、static publishを入力。ヒットしたのは3件

いずれもStateはAlpha。

ひとしきり考えた末、エクステンションのインストールは保留。

OpenCMS

OpenCMS 8.0.1も実際にインストールしてみた。Java JDKとTomCatをインストールする必要があったので、既存環境に影響を与えないよう、Windows XP(ただし仮想マシン上)にインストール。いざ、静的HTMLファイルを出力してみよう…と思ったら、以下のとおり、設定が面倒くさい。

http://www.opencms.jp/docs/ver7/alkacon/documentation_staticexport/config/

http://www.opencms.jp/docs/ver7/alkacon/documentation_staticexport/ には、

Create a full static copy of a side that can be run completely without OpenCms or that can be stored on a CD-Rom.

と書いてあり、興味をそそられるのだが、これ以上の検証は断念。