#author("2022-06-23T08:37:19+09:00","","")
#author("2022-07-04T08:13:04+09:00","","")
*Web Collaboration by PukiWiki-コラム [#d03524d2]
最新のインストール方法(PukiWiki/Install/インストール方法) [#o06e08ed]
%size(24){最新のインストール方法(PukiWiki/Install/インストール方法)};
-----
#access();
#contents();
**PukiWiki  - 自由にページを追加・削除・編集できるWebページ構築スクリプト [#k2888a64]
-----
**インストール [#p536e26c]
PukiWikiはPHPスクリプトであるため、(例えばPerlのように)スクリプトに実行権を付ける必要はありません。
CGI起動でないのであれば、スクリプトの一行目を修正する必要もありません。

Webサーバーへのシェルアクセスが可能であれば、PukiWikiのアーカイブをそのままサーバーに転送し、
サーバー上で解凍 (unzip pukiwiki-*.zip) するだけでパーミッションの設定も行われ、すぐに使い始める事ができるでしょう。

スクリプトの中の日本語は(あれば、基本的に)UTF-8で、また改行コードはLFで記述されています。スクリプトを直接編集する場合は、日本語文字コードと改行コードの自動判別ができ、それを元のまま保存できるテキストエディタを使用して下さい。

以下に、事前にクライアントPCで作業を行う場合の例を記します。

1. PukiWikiのアーカイブを展開します。

2. 設定ファイル(*.ini.php)の内容を確認します。何も修正せずとも動作しますが、公開された場所に設置するのであれば、
念のため事前に管理者パスワードを修正して下さい。

設定ファイルのほとんどの項目は pukiwiki.ini.php に集約されています。

全体設定           : pukiwiki.ini.php
ユーザ定義         : rules.ini.php

その他、ユーザーエージェントごとの設定が用意されています。

デスクトップPC     : default.ini.php
携帯電話およびPDA  : keitai.ini.php

PukiWikiの管理者パスワードは、pukiwiki.ini.php にある変数 $adminpassです。簡単に試すだけであるならば、
以下のような内容で充分でしょう。
('YourPassWord' の部分を、あなただけのキーワードで置き換えて下さい)

$adminpass = '{x-php-md5}' . md5('YourPassWord');

※設定を「有効にする」とは、多くの場合、設定値を数字の 0 でない値(例えば1)にする事です。
一部の設定は名前に DISABLE ないし $noXXX とありますが、それらは値を 0 でないものにすることで、
その設定値に対応する機能が無効になります。(無効にする役割が有効になります)

※インターネットに公開するPukiWikiであるならば、PKWK_SAFE_MODE を有効にすることをお薦めします。(詳細:BugTrack/787)

※他人に編集させない環境をご要望であれば、PKWK_READONLY を有効にすることをお薦めします。(詳細:BugTrack/744)

3.  ファイルをFTPなどでサーバに転送します。
基本的に何の変換も行わず、「そのまま」転送して下さい
・ファイル名や、ファイル名の大文字小文字などを変更しないで下さい
・FTPの転送モードは「バイナリ(bin)」を使用して下さい

4.  サーバ上のファイルおよびディレクトリのパーミッションを確認します。
専用サーバーの場合の例を以下に例を示します。
共有サーバーで他のユーザーからの読み書きを禁止したい場合は
 777->771, 755->750, 644->640, 666->660 等、適切なパーミッションを設定してください。

ディレクトリ パーミッション
attach         777	添付ファイル格納ディレクトリ
backup         777	バックアップファイル格納ディレクトリ
cache          777	キャッシュファイル格納ディレクトリ
counter        777	カウンタファイル格納ディレクトリ
diff           777	差分ファイル格納ディレクトリ
image          755	画像ファイル
image/face     755 	(画像ファイル)フェイスマーク  
lib            755	ライブラリ
plugin         755	プラグイン
skin           755	スキン、CSS、JavaScirptファイル
wiki           777	データの格納ディレクトリ

ファイル    パーミッション
.htaccess      644
.htpasswd      644
*/.htaccess    644 [#c12371b7]

ファイル    パーミッション
*.php          644 [#m2d02a66]
*/*.php        644 [#z662cd4c]
attach/*       666 (はじめは存在せず)
backup/*.gz    666 (インストール時は存在せず)
backup/*.txt   666 (多くの環境では存在せず)
cache/*        666
(一部のプラグインはバイナリファイルを保存します)
counter/*      666 (はじめは存在せず)
diff/*.txt     666 (はじめは存在せず)
wiki/*.txt     666
image/*        644
image/face/*   644
lib/*          644
plugin/*       644
skin/*         644

5. サーバーに設置した PukiWiki の index.php に、Web ブラウザからアクセスし、PukiWikiが動作するか様子を見ます。
※エラーが出る場合: 下記を参照して下さい

6.  必要に応じて、さらに設定やデザインを調整して下さい。
※CSS(外見)は skin/スキン名.css にあります。どのようなCSSが求められているかはスキンに記述されています。
※スキン(外見の骨組み)に関する設定項目は skin/スキン名.skin.php の先頭にあります。
※プラグイン独自の設定項目は plugin/プラグイン名.inc.php の先頭にあります。
※tDiaryテーマ(tDiaryスキン)の使用法は BugTrack/769 を参照して下さい。

***エラーが出る場合 [#jc96f2a6]
CGI版のPHPが設置されたサーバー(特にsuExecと組み合わされている環境)で動作させようとした場合に "Internal Server Error" などと
表示される場合があります。
詳しくはサーバー管理者がPHPスクリプト向けに提供している情報を確認して下さい。

-1. 実行するPHPスクリプト ( PukiWikiの場合 index.php ) の一行目に、PHPバイナリへのパスを追加する必要があるかもしれません。
(例: #!/usr/local/bin/php)この値はサーバーにより異なります。

-2. たいていの場合、より厳密なパーミッションが求められます。

***エラーが出る場合: .htaccessファイル [#c6a881e7]
PukiWiki 1.4.4 から .htaccess ファイルを添付する様になっていますが、
Apache Web サーバーの設定によっては "Internal Server Error" を起こす場合があります。

具体例:
Webブラウザに "Internal Server Error" と表示され
Webサーバーのエラーログには "order not allowed here" というエラーが記録される

これはPukiWikiを設置したい場所で .htaccess による設定変更が許可されていない(特に "AllowOverride Limit" でない)のが原因です。

回避策: .htaccess、および skin/.htaccess を削除する

解決策:
Apache設定ファイル(httpd.conf)の、PukiWikiを設置したいディレクトリに関する部分に "AllowOverride Limit" を追加する

エラーが出る場合: Parse error
"Parse error: parse error, unexpected XXXX in .... on line NNN"

PHPスクリプトに矛盾がある場合、このようなメッセージが表示されます。
指定されているファイルの、指定された行の付近をチェックし、問題があれば修正して下さい。
理由としては以下のようなケースが考えられます。

-1. 末尾にあったセミコロンを消してしまった

-2. 文字列をシングルクォートかダブルクォートで囲むはずが、片方を消してしまった / 文字列の中に(文字列を囲んでいるのと同じ)
シングルクォートやダブルクォートがある

エラーが出る場合: Runtime error
Error message : Directory is not found or not writable (xxx_DIR)

データを書き込むディレクトリ(やファイル)に書き込み権限が無い場合、このようなメッセージを表示します。
xxx_DIR がどこにあたるかは、設定ファイルで同名の定数を定義している部分を参照して下さい。

**バックアップとリストア [#g5debd9a]
ページの最新データを収めているディレクトリ(デフォルトの名前は wiki)以下を、また必要に応じて他のデータを収めている
ディレクトリ以下をバックアップして下さい。(同 attach, backup, cache, counter, diff)

cacheディレクトリもバックアップすることをお薦めします。
-1. cache/*.rel ファイルと cache/*.ref ファイルは linksプラグイン で再生成可能ですが、この処理は非常に重く、
環境によっては処理が必ず失敗する(中断する)場合があります。
-2. cache/*.rel ファイルがPukiWikiに全くない時に既存のページを編集すると、linksプラグインを実行した状態と
ほぼ同等の負荷がかかります。(詳細:BugTrack/2056)
-3. amazonプラグインはここに画像(のキャッシュ)を保存します。
データを配置した時は、ファイルのパーミッションが期待されている通りかどうか、また実際に動作するかどうかを確認して下さい。
(例: 配置したページの更新を試みる)

PukiWiki 1.4.5 以降では、添付されている dumpプラグイン で、wiki/attach/backup ディレクトリのリモートバックアップ(*.tar.gzないし*.tar形式)が可能です。

起動の例: index.php?plugin=dump

dumpプラグインにはdumpプラグインで取得したファイルの中身をPukiWikiに展開する機能(リモートリストア)も用意されています。
ただしファイルに含まれていないデータをPukiWikiから削除する機能はありません(常に上書きになります)し、
WebサーバーやPHPのアップロードファイルサイズ制限を越えるファイルを利用することはできません。
またこの機能はデフォルトで無効になっています。

その他、PukiWikiの更新内容をメールで通知する機能は、既存のデータを失わないための機能としてとらえる事ができるでしょう。
//

トップ   差分 履歴 リロード   一覧 検索 最終更新   ヘルプ   最終更新のRSS