大阪市中央区 システムソフトウェア開発会社

営業時間:平日09:15〜18:15
MENU

PukiWikiの引っ越し

株式会社クローバーフィールドの経営理念
著者:高木信尚
公開日:2016/01/22
最終更新日:2017/12/27
カテゴリー:雑記
タグ:

こんにちは、高木です。

年末から馬詰とえみの2名が(一応)開発案件に携わっています。
一難去ってまた一難のようで、連日のように新しい問題に直面しているようです。

あまり突き放してばかりでも気の毒なので、たまには助け舟を出したいと思います。
もっとも、すでに自己解決しているかもしれませんが……。

古いウェブサイトのリニューアルが彼女らに与えられた任務です。
既存のウェブサイトには、PukiWikiで作られた非公開のコンテンツがあるようで、それが発覚したのが昨日だったと聞きます。

大量のコンテンツをチマチマ移行するのは気が遠くなるような作業量になります。
もともと非公開コンテンツなので、見積もり時点ではわからなかったのも気の毒なところです。

PukiWikiというものをご存じない方のために簡単に説明しておきましょう。

PukiWikiというのはいわゆるウィキの一種で、Perlで実装されたYukiWikiをPHPで実装しなおしたものです。
最近ではウィキというとウィキペディアのことだと誤解している方も少なくないようですが、本来はブラウザ上でウェブページの編集ができるプログラムのことです。

PukiWikiはデータベースを使用せず、すべてのコンテンツがファイルの形で保存されます。
つまり、PukiWikiで作られたウェブサイトを引っ越しするには、すべてのファイルを引越し先にコピーすればそれでOKです。
同じサーバー内であれば、ディレクトリを移動させるだけでもいいでしょう。

ここで注意すべき点が2つほどあります。

1つは、各ファイルのパーミッションです。

パーミッションというのは、各ファイルに設定された、実行可能、読み出し可能、書き込み可能といった属性です。
FTPを使ったことがある方なら、見覚えがあるはずです。

LinuxやFreeBSDなどUnix環境のファイルを、FTPでいったんWindows環境にダウンロードすると、普通はパーミッションの情報が失われてしまいます。
本来であれば、Windowsを介さずに直接Unix間でファイルを移すほうがいいのでしょうが、無理な場合は失われたパーミッションを復元してやらなければなりません。

もう1つは、PHPのバージョンです。

PukiWikiはかなり古いプログラムであり、長い間、PHPのバージョンが4.xにしか対応していませんでした。
PHPはもうバージョン7.0の時代です(ちなみに6.xは欠番です)。

古いウェブサイト上に構築されたPukiWikiは、おそらくPHP 4.xにしか対応していない可能性があります。
これをPHP 5.xに対応した新しいバージョンにアップデートしなければならないかもしれません。
なお、PukiWikiはまだPHP 7.0には対応していません。

PukiWikiのアップデートはそんなに難しい話ではありませんが、コマンドラインでpatchをあてないといけないので素人には手に負えないと思います。
既に稼働しているPukiWiki 1.4.7利用サイトをPHP5.5対応の1.5.0にアップデートする手順

いずれにせよ、PukiWikiを継続して使い続けるのであれば、手作業ですべてのコンテンツを移行させる必要はありません。

一方、PukiWikiのコンテンツをWordpressに移行するとかになると難度は格段に上がります。
もしやるとすれば、PukiWikiの各ページのファイルをWordPressでインポートできる形式に変換するプログラムを書く必要があると思います。

その場合、内部リンクをどうするか、十分に検討した上で移行作業を行う必要があります。
あまり現実的ではないので、PukiWikiをやめて別のシステムに載せ替えるのであれば、他のWiki、たとえばウィキペディアで使っているMediaWikiなどの利用を検討するほうがいいでしょうね。

    上に戻る