PukiWiki 1.4のインストール(PukiWiki-1.4.4以降)

重要
PukiWiki 本体は、スクリプトで書かれたwiki 機能のみのソフトです。
簡易のセキュリティとして管理者パスワードやユーザ認証などの機能やそれらを扱うラッパーは存在していますが、これだけでハッキングやSPAM などの脅威を防ぐ事はできません。
このためネットワーク上で運用する際には、サーバーを設定・運用するスキルや本体への改修や機能追加(改造と称される場合もあります)を行うスキルなどが必須となります。

動作環境

PukiWikiはPHPで書かれています。日本語マルチバイト対応のPHPがインストールされている環境なら基本的にどのOS上でも動作します。

日本語マルチバイト対応モジュール(mbstring)対応のPHP 4.1.0以降であれば動作するはずです。

特定環境での事例や注意点については、特定の環境・サーバーへのインストール(設置)Q&A/動作環境動作実績などもご覧ください。

前提

設置方法には複数の選択肢があります。

配布ファイルである tar.gz あるいは zip ファイルをそのまま設置サーバーへ放り込み、サーバー側で解凍、設定を行なうことも出来ますし、ローカルで解凍、設定したのち、FTPでファイル転送を行うことも可能です。
しかし公開サイトに設置する場合は、セキュリティソフトや機能などを併用せずに未設定のままで解凍するとwikiが攻撃される危険性が高まります。

ここでは、もっとも一般的な方法であると思われる

ローカルで解凍 ==> 設定 ==> FTPで設置サーバーへ転送 ==> パーミッションの確認

という手順を説明します。他の方法を選択している場合は、不要な部分を適宜読み飛ばしてください。

また、文字コードや改行コードはデフォルトの「文字コード:EUC-JP、改行コード:LF」としています(UTF-8 版は、「文字コード:UTF-8、改行コード:LF」)。
各ファイルを修正する前に、利用しているエディタがこれらの文字コードを扱えるのか(例えば、Win のメモ帳は、EUC-JP を扱えません)を、よく確認してください。(対応しているエディタの一例
また対応しているエディタであっても、ファイルの読み込み時や保存時に文字コードや改行コードが変わってしまわないように、エディタの設定を確認してください。

配置する前に

FTPでファイルを配置する前に、PukiWikiの設定ファイルpukiwiki.ini.phpを自分の環境に合わせて書き換えておきましょう。
いたずらされない様に、少なくとも管理者パスワードはデフォルトでないものに変更して下さい。

既存のあるいはローカルで準備したコンテンツを他のサーバーに移動させる場合などは、PukiWiki/Install/アップグレード時の注意 も確認してください。
このページでは省略している、PukiWiki 稼動後に生成されるデータ(バックアップや添付ファイルなど)に関する説明があります。

上位バージョンにアップグレードする場合は、PukiWiki/Install/アップグレード時の注意 や、パッケージ付属のUPDATING.txt 、このページの後半部分にある「~への移行」の該当部分も忘れずに確認してください。設定やデータの移行方法、変更になった仕様や設定方法に関する説明があります。

pukiwiki.ini.php の修正

管理者の名前
$modifier = 'anonymous';
上記のanonymousの部分をあなたの名前に書き換えましょう。日本語でもかまいません。
管理者のサイト

$modifierlink = 'http://pukiwiki.example.com/';

上記の「http://pukiwiki.example.com/」の部分をあなた(あなたのPukiWikiを管理している人)のWebサイトのURLに書き換えましょう。PukiWikiを設置するURLでなくてもかまいません。あなたのWebのトップページのURLにしておきましょう。

管理者パスワード
  • 1.4.6 以降
    $adminpass = '{x-php-md5}!';
    上記の「{x-php-md5}!」の部分を書き換えます。
    {x-php-md5} と頭に記述した場合は、MD5による暗号化したパスワードを書き込む必要がありますが、とりあえずは
       $adminpass = '{x-php-md5}' . md5('your-pasword');
    といった形式でyour-paswordの部分をあなたが決めた別のパスワードに書き換えて記述しておきましょう。
    正式にPukiWikiを使い続けることを決めてから、MD5によって暗号化した文字列に書き換えればいいです。

    MD5 以外の暗号化フォーマットを利用することもできます。詳しくはdev:BugTrack/709 をご覧ください。

  • 1.4.5 まで
    $adminpass = '1a1dc91c907325c69271ddf0c944bc72'; // md5('pass')
    上記の'1a1dc91c907325c69271ddf0c944bc72'の部分を書き換えます。
    MD5による暗号化したパスワードを書き込む必要がありますが、とりあえずは
    $adminpass = md5('your-pasword');
    の形式でyour-paswordの部分をあなたが決めた別のパスワードに書き換えて記述しておきましょう。
    正式にPukiWikiを使い続けることを決めてから、MD5によって暗号化した文字列に書き換えればいいです。
  • 暗号化したパスワードを得る方法
    MD5ハッシュは、Linuxやcygwinであれば以下のようにして計算させる事ができます。('-n' オプションを忘れずに!)
        $ echo -n 'pass' | md5sum
    当然、passは別のパスワードに書き換えて暗号化した文字列を生成し、それを設定してください。
    FreeBSDなどでは md5sum の代わりに md5 コマンドを使ってください。

    他に、md5 プラグインを使うことでも生成は可能ですが、
    ネットワーク上に通信内容が丸見えになってしまう(= パスワードがばれてしまう)ので、利用する際はローカル環境を使うなど細心の注意が必要です。

以上、pukiwiki.ini.phpの中の3ヶ所の書き換えが終わったら、いよいよインストールしましょう。

くれぐれもファイル転送モードとパーミッションの設定は間違わないように。また、UNIX系の場合には、オーナー(ファイルの所有者が誰なのか)に関しても適切に設定して下さい。(PukiWiki/Install/パーミッション設定のコマンド例を参考にして下さい)

なお、配布時は pukiwiki.php、index.php のどちらにアクセスしても同じデータが表示される様になっています。どちらか一方が不要であれば消してしまってもかまいません。また、名前を別のもの(たとえば wiki.phpなど)に変更してもかまいません。

FTPで設置する時の注意事項

FTPそのものやFTPクライアントに関する情報は他にまかせるとして、下記を参考にFTPクライアントの設定を確認しておいてください。

ファイル転送モード

文字コードと改行コードの変換

使用するFTPクライアントによっては、ファイル転送時に文字コードや改行コードを変換しながら転送する機能が搭載されている場合があります。ローカル編集したファイルをコードの違うサーバーへ転送する時は重宝する機能ですが、今回のような初期の設置時には注意が必要です。

バイナリーファイルである画像「*.gif、*.png」以外の「*.php、*.txt」等のアスキーファイルは、「文字コード:EUC-JP、改行コード:LF」となっています(UTF-8 版は、「文字コード:UTF-8、改行コード:LF」)。
これらは、このまま設置した場合に動作するよう調整していますので、無変換転送に設定して転送を行なってください。

PukiWikiのファイル一覧

PukiWikiで必要なディレクトリとファイルは次のとおりです。パーミッションと転送モードの別を色分けして表示しています。

注意

以下に示しているパーミッションは、設定の一例です。CGI版PHP を利用しているなどの理由で、このパーミッション設定では動作しない(エラーが出る)場合があります。
この場合、サーバーの利用マニュアルやPukiWiki/CGI版PHPで動作させるにはを参考に、設定値を読み替えて下さい。また、オーナー(所有者)の設定を適切なものに変更して下さい。

ディレクトリ755 
ディレクトリ777 
ファイル644ASCII(EUC)
ファイル644Binary
ファイル666ASCII(EUC)
ディレクトリ・ファイル不要 

動作確認

index.phppukiwiki.phpにブラウザからアクセスしてデフォルトページが表示できれば、基本的に設置は完了です。

念の為、以下の機能が正常に機能する事を確認しましょう。

試したことがなければ、以下の操作もやってみましょう。

もし、正常に表示されなかったり、エラーが出るようなら、Q&A/インストールなどを参考にしてください。

PukiWikiのカスタマイズ

めでたく設置に成功したら、PukiWikiを自分好みにカスタマイズしていきましょう。

pukiwiki.ini.php の調整

「インストールする前に」で行なった設定以外に pukiwiki.ini.php の気になる項目があれば調整してみて下さい。

トップページとして表示するページの名前
注意 : 1.3系列とは異なり、トップページ名に日本語を使う場合でもBracketNameにしないでください。
   $defaultpage = "フロントページ";
サイトのタイトル
ブラウザのタイトルバーに表示される名前です。
   $page_title = "サイト名";
ユーザ認証
詳しくは、PukiWiki/Install/ユーザ認証を参照してください。

MenuBarの活用

初期状態では、「最近のxx件」という表示と共に日付とWikiNameがずらっと左側に並んでいるはずです。ページが新規作成/更新されれば、新たにWikiNameが増えたり、すでに表示されてあったWikiNameの上下位置が入れ替わったりと自動で変化しますので、表示されているWikiNameをクリックしさえすれば、自由に閲覧することが可能です。

もちろん、この初期状態のままでも使用に問題はありませんが、せっかくですからメニューの作成などをしてみてはいががでしょうか?

とにもかくにも編集するためにMenuBar のページへと辿り着かなければ始まりません。「最近のxx件」という表示の中にMenuBarというWikiNameがあればそこから辿れます。無ければ、上部メニューの「単語検索」をクリックして

   MenuBar

と打ち込み検索すれば、見付かるはずです。

ここまで辿り着いたら後は簡単。通常の編集となにも変わりませんので、自分好みにカスタマイズして下さい。

その他、Q&A/デザイン・CSS, ちょっと便利にのページでは改造/活用のヒントが紹介されています。

スキンやCSSの改造による外観の変更

ページ左上のアイコンは image/pukiwiki.png を置き換えればOKです。

参考までに: 標準添付のアイコンのサイズは 80 x 80 Pixelです。

関連: カスタマイズスキンQ&A/デザイン・CSS

プラグインやカスタマイズによる機能追加

設置が正常に完了して、サイトの外観も決まったら、実際に色々なページを作ってみます。

しばらく使っていくうちに欲しい機能や実現したい動作ができた場合はFAQQ&A、各質問箱自作プラグイン欲しいプラグイン自作スキン などに目を通してみてください。

プラグインの中にはプラグイン内設定を変更することでデフォルトの動作を変更する事ができるものがあります。
PukiWiki に同梱されているものに関しては、ヘルプからプラグインマニュアルを呼び出し確認してみてください。
(アップグレード時にwikiデータを上書きしなかった場合、過去バージョンの内容のままになっていますので、注意してください)

ページの構成などで迷った場合は、他のPukiWikiサイトをリンク集や検索エンジンで見てみる(google:PukiWiki)と参考になるかもしれません。

順調に稼動できたら

設置が完了して、順調に運用できた場合はPukiWiki使用者への100?の質問に答えてみて下さいませ。


PukiWiki 1.3系から1.4への移行

【注意】
1.3系の開発は終了しました(FrontPage
サポートが終了したバージョンのPHPで稼動させ続ける事は危険ですので、自身で1.3系を改修し続けるか1.4系へ移行するかを選択してください。
PukiWiki 1.3系から1.4へ移行する前に、ほんとうにご自分のサイトで1.4の機能が必要かどうか検討した上で移行しましょう。1.3系の機能で十分であるならば、あえて1.4に移行する必要はありません。
PukiWiki 1.3系は1.4が正式リリースされた後も、セキュリティ関係のバグフィックスなどのサポートは継続して行ないます(新機能の追加は行ないません)。

バックアップ

バックアップは非常に大切です。以下の作業を行う前に、*.phpやスキン、プラグイン、attach、backup、counter、diff、wikiディレクトリを含む全てのデータをバックアップしてください。(やり方はお任せします :) )

1.4のインストール

【補足】
1.4ではDOCTYPEがXHTML 1.1に移行しています。自作のスキンやプラグインを引き続き使用する場合は、XHTML 1.1の書式に書き換える必要があります。

また、プラグインについては1.3系列のプラグインをそのまま使用できるとはかぎりません(プラグイン/開発者向け参照)。標準のプラグインは1.4に添付されたものをインストールしてください。

【注意】
1.4ではcacheディレクトリ、trackbackディレクトリが追加されています。ここのパーミッションの設定(ディレクトリは777、*.datは666)を忘れると下記のページ変換時にエラーが出ます。

ファイル名からBracket部分を取り去る

リンクキャッシュを初期化する

書式の違いをコンバート

書式の移行を手動で行う場合は、このステップを省略できます。

【補足】
従来ユーザー定義だったcolor,sizeなどをインライン型プラグインに変換はしません。但し、ユーザー定義のcolorやsizeを&~;の形式で定義していた場合は、そのままインラインプラグインで解釈されるようになりますので書き換えは不要です*1

ユーザー定義のcolorやsizeを&~;の形式とは異なる形で定義していた場合は、従来のユーザー定義をそのまま残しておけば書き換えは不要です*2

aname、counter、online、versionはインライン型プラグインに移行しています。convertpage.inc.phpではこれらをコンバートしませんので、aname以外は書き換えが必要です。

PukiWiki 1.4.3以前から1.4.4以降への移行

PukiWiki1.4.4で何が起こったか

PukiWiki 1.4.3→1.4.4の改訂の過程で機能追加・ロジックの整理・バグ取りもさることながら、大掛かりなファイル配置の整理が行われています。

ここではPukiWiki1.4.3以前の版をお使いの方への変更概要+移行方法を紹介します。 なお、1.3.x系をお使いの方は1.3系からの移行も併せてお読みください。

まずはバックアップ

例によってバックアップは非常に大切です。以下の作業を行う前に、*.phpやスキン、プラグイン、attach,backup,counter,diff,wikiディレクトリを含む全てのデータをバックアップしてください。(やり方はお任せします :) )

ファイルの配置整理

配置が変更された理由について

  1. PukiWikiの各フォルダのディレクトリ配置は定数宣言されているのですが、推奨設定以外を設定するとうまく動かないなど徹底されておらず、懸案事項として挙げられていました(dev:BugTrack/147,dev:BugTrack/480,dev:BugTrack/509)。 更に dev:PukiWiki/WikiFarmdev:PukiWiki/国際化 の議論もあり、ファイル配置の整理が必要との判断から大幅な配置変更が行われました。
  2. 従来携帯電話への対応はi-mode, J-Phone限定でしたが au,TU-KA,AirH" Phoneなど未対応のキャリアやNetFrontといった組み込みブラウザに対応しました。
    従来は対応ブラウザ毎に設定ファイルを作成していましたが、対応ブラウザが増えると管理が煩雑になるため、設定ファイルの統合が行われました。
  3. その他、主だった対応内容のリンク先
    1. デバイス/ユーザーエージェント ハンドリングの単純化 - dev:開発日記/2004-07-05
    2. 各ディレクトリにindex.htmlを追加 - dev:開発日記/2004-07-11
    3. エントリ用のpukiwiki.php(index.php)を作成 - dev:開発日記/2004-07-24
    4. pukiwiki.png/gif を IMAGE_DIR (./image/) に移動 - dev:開発日記/2004-07-24
    5. face 画像を face/ から image/face に移動 - dev:開発日記/2004-07-28
    6. ライブラリとして使われうる phpファイル を全て LIB_DIR (lib/) に移動 - dev:開発日記/2004-08-01

各ファイルの移動元・移動先一覧

1.4.3以前→1.4.4 のファイルの移動元・移動先をまとめた一覧です。一旦は読み飛ばして、移行作業時に参照して下さい。。

移動元dirファイル名移動先dir
(なし)index.html追加 -> ./lib*3
.htaccess
./auth.php移動 -> ./lib
backup.php
config.php
convert_html.php
diff.php
file.php
func.php
html.php
init.php
link.php
mail.php
make_link.php
mbstring.php
plugin.php
proxy.php
pukiwiki.php
trackback.php
pukiwiki.gif移動 -> ./image
pukiwiki.png
i_mode.ini.php削除 -> keitai.ini.phpに統合
jphone.ini.php
*.lng変更なし
*.ini.php
(なし)keitai.ini.php追加 -> ./
(なし)pukiwiki.php追加*4 -> ./
(なし)index.php追加*5 -> ./
./face*移動 -> ./image/face へ
(なし)worried.png追加 -> ./image/face
./plugindir.txt削除
(なし)index.html追加 -> ./plugin
.htaccess
clear.inc.php追加 -> ./plugin*6
setlinebreak.inc.php
topicpath.inc.php
./attach*基本変更なし*7
./backup
./cache
./counter
./diff
./image
./skin
./trackback
./wiki
./wiki.en
./devel削除*8
./*.txt変更なし*9

移行の手順

CVSを使う方法

LIB_DIR (./lib/) に移動したファイルに関して: お手元でこれらのファイルをカスタマイズされており、CVSを用いてマイグレートされる方のために、移動前の最後のバージョンに、タグ pkwk14_2004-08-01_moved-before を打ってあります。このタグを(移動前の最新の状態に)マージするためのターゲットにお使い下さい。

CVSを使わない方法

方法はいろいろありますが、あくまで一例として。

ファイルの移動以外にもPukiWiki1.4.4のバージョンアップにおいて、ソースコードの大幅な整理が行われています。

さて、ここで質問。あなたはどの程度、配布ファイルに対してプログラムの修正を行いましたか?

もし、ほとんど修正を行っていない場合は、新規にPukiWiki1.4.4をインストールする方法をお勧めします。このとき、万一インストールに失敗しても、今まで使っていたPukiWikiに影響を与えないように、今使っているPukiWikiとは別のディレクトリにインストールするのをお勧めします。

PukiWiki1.4.4で正常に稼動できた事を確認した後にバックアップからattach、backup、cache、diff、trackback、wiki、skinの全ファイルを復元してください。それできっと動く事と思います。

もし、あなたがプログラムの修正をたっぷり行っていた場合は、きっとうんざりするぐらいのソースコードの差異が出ることでしょう。

そこで、一旦あなたが変更した箇所を特定してから、同じような修正をPukiWiki1.4.4に加えていく作業を行っていきます。

  1. CVSから1.4.4と最後に自分が持ってきた版に一番近い版を持ってきましょう。 CVSの一番下のタグを切り替えてた後にDownloadを選びます。
  2. 自分のPukiWikiとCVSのファイルとのdiffを取り、自分が変更した箇所を特定して、控えておきます。
  3. PukiWiki1.4.4のファイルを適当のディレクトリに展開して、自分のPukiWikiからattach、backup、cache、counter、diff、trackback、wiki を全てコピーする。
  4. PukiWiki1.4.4のファイルに対して自分が変更した箇所、パッチを当てた箇所を反映します。もし1.4.4用のパッチがあるのならそれを使った方が良いでしょう。
    1. 書き換えるファイルは主に*.ini.php、lib/ や plugin/ が中心だと思いますが skin/ などもお忘れなく。
  5. 独自プラグインや自分で作ったフェイスマークなど、配布ファイルに含まれていないものを追加する。
  6. 配布ファイルに含まれているファイルで不要なものを削除する。
    1. *.txtや、imageの中の画像、devel、初期状態で用意されているページ、使わないプラグインなど必要に応じて、適宜削除する。

*1 1.4ではユーザー定義はrules.ini.phpで定義します。
*2 1.4ではユーザー定義はrules.ini.phpで定義します。
*3 1.4.4で新規に追加されたフォルダです。パーミッションはpluginディレクトリと同じにしてください
*4 来訪者のエントリ用となるプログラムであり、/libにあるpukiwiki.phpとは別物である点に注意。従来pukiwiki.phpをindex.phpにしており、今後もpukiwiki.phpでアクセス不要の場合は不要
*5 来訪者のエントリ用となるプログラム。pukiwiki.phpでのみアクセスを許す人は不要
*6 1.4.3で追加されたファイルです。1.4.2以前を使っている方のみ該当
*7 pukiwikiの動作に直接関係はしませんが、dir.txtが削除されてindex.html, .htaccessが追加されています
*8 pukiwikiの動作には必要ないので、実運用環境には作成していないと思いますが、一応
*9 pukiwikiの動作には必要ないので、実運用環境には作成していないと思いますが、一応

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-07-20 (日) 15:49:25
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 2.204 sec.

OSDN