OSDN Git Service

BugTrack/2495 .htaccess files in Apache 2.4 format
[pukiwiki/pukiwiki.git] / README.txt
1 名前
2     PukiWiki - 自由にページを追加・削除・編集できるWebページ構築スクリプト
3
4     Version 1.5.2
5     Copyright
6       2001-2019 PukiWiki Development Team
7       2001-2002 yu-ji (Based on PukiWiki 1.3 by yu-ji)
8     License: GPL version 2 or (at your option) any later version
9
10     URL:
11       https://pukiwiki.osdn.jp/
12       https://pukiwiki.osdn.jp/dev/
13       https://osdn.jp/projects/pukiwiki/
14
15 書式
16     index.php
17     index.php?PAGE_NAME_ENCODED
18     index.php?plugin=PLUGIN_NAME
19
20 概要
21     PukiWiki(ぷきうぃき)は、ハイパーテキストを素早く自由に追加・削除・編集で
22     きるWebアプリケーション(Wiki, WikiWikiWeb)の一つです。テキストデータから
23     XHTML 1.1 を生成することができ、そのテキストはWebブラウザから何度でも修
24     正することができます。それぞれのページは自然にハイパーリンクで結びつける
25     ことができます。
26
27     PukiWikiはグループ間の知識の共有に用いることができますが、個人が自分のた
28     めのアイデア帖や日記ツールとして活用することも可能です。また、管理者に
29     だけ「簡単に編集できる」利点を残したまま、閲覧者に対して「編集のできない
30     Webサイト」として情報を提供する構成も可能です。(この場合、Wiki風のデザイ
31     ンである必要すらありません)
32
33     PukiWikiはPHP言語で書かれたプログラムなので、PHP(PHP4.1~PHP7.3)が動作す
34     るWebサーバーであれば容易に設置でき、軽快に動作します。
35
36     PukiWikiは、yu-jiさんを含む PukiWiki Develpers Team やその貢献者が、各自の
37     著作物にGPLバージョン2(または _あなたの選択で_ それ以降のGPL)を適用してい
38     る「フリーソフトウェア(自由なソフトウェア)」です。最新版はPukiWiki公式サイ
39     トから入手できます。
40
41 ページの作成、編集、削除、復旧
42     1. 「新規」のリンクからページ名(まだそのWikiに存在していないもの)を入力し
43       たり、既存のページを表示した状態で「編集」のリンクをたどったり、そのペー
44       ジが置かれるはずのURLに直接アクセスすると、テキストの入力ができる状態に
45       なります。
46
47       ※「凍結」されていたり、「編集が禁止」されている場合は、リンクが存在し
48         なかったり、そのようなメッセージが表示されるでしょう
49
50     2. テキストを入力(ないし修正)し「保存」すると、そのテキストはサーバーに保
51       存され、すぐに「そのテキストを元にしたWebページ」が表示されます。
52       「編集」は何度でも繰り返す事ができます。
53
54     3. テキストの中に、「大文字始まりの英単語が二つ以上連結された単語」(例え
55       ば"NewPage")や、二重のブラケットで囲まれた語句(例えば[[新しいページ]])
56       があった場合、その語句は背景が変化し、末尾に '?' という小さなリンクが挿
57       入されます(未解決のリンク)。 この装飾は「(表示した時点では)その名前のペ
58       ージが存在していなかった」ことを示しています。もしもその名前のページが
59       存在しているならば、その語句の部分は「その名前のページ」を指し示すハイ
60       パーリンクになります。
61
62     4. テキストを全て削除してから「保存」することで、そのページを削除すること
63        ができます。いたずらを検知するため、削除された事実は専用のページ 
64        [[RecentDeleted]] に記録されます。
65        
66        ※削除した理由が明確でない場合、他の参加者はそのページを復旧させること
67          ができます。
68
69     5. テキストの編集履歴は自動的に記録(バックアップ)されます。設定によります
70        が、バックアップは既定の時間が経過するか、毎回編集するたびに行われま
71        す。バックアップされたデータがあるならば、それを使いコンテンツを当時の
72        状態に復旧することができます。バックアップデータを完全に削除することは
73        管理者にしかできません。
74
75 テキストの整形ルール
76     テキストをWebページ(HTML/XHTML)としてうまく出力させるため、「どのようなテ
77     キストを書くと、どのようなHTML/XHTMLになるのか」、という部分に一定のルール
78     (書式)が決められています。こちらについては [[help]] [[FormattingRules]] の
79     ページを参照してください。
80
81     テキストに書き込んだ「HTMLエンティティ(HTMLにおいて、特殊な文字を表示させ
82     るためのエスケープ文字列のようなもの)」はほぼそのまま表示されます。一部の
83     文字は、HTMLエンティティで記述する必要があるかもしれません。
84     (例: "&" => "&")
85
86     テキストデータでの改行を、XHTMLの出力でもそのまま改行(<br />)として反映さ
87     せたい場合、あるいは行間を空けたい場合:
88       1. 設定 $line_break の内容を切り替えることで全体の動作が変わります
89       2. #setlinebreak プラグインで行単位に操作する事が可能です
90       3. 行末に "~" を追加すると、その行の改行が無視されなくなります
91       4. brプラグイン(&br;) を文中に追加すると、そこで改行します
92       5. brプラグイン(#br) で、一行分の空間を空けることができます
93
94     WikiName (大文字始まりの英単語が二つ以上続いた単語) に対する自動リンク機
95     能を無効にするには、設定 $nowikiname の内容を切り替えて下さい。
96
97     AutoLink (既存のページに対するリンクを自動的に作成する機能)を無効にした
98     り、有効とみなすページ名のバイト数を修正する場合、設定 $autolink の値を
99     修正して下さい。
100
101 ページの編集を禁止するには
102     以下のような方法があります。
103
104     1. 定数 PKWK_READONLY により、PukiWiki全体を書き込み禁止にする
105       これは閲覧専用のPukiWikiを用意するためのオプションです。
106       既存のPukiWikiのミラーサイトを構築したり、情報提供用のサイトを構築するた
107       めに活用することができます。有効/無効にするためには管理者による設定変更
108       が必要です。 (詳しくは: BugTrack/744)
109
110     2. 編集認証($edit_auth)により、指定したパターンに合致するページの編集を禁
111      じる
112       指定したパターン(例えば "Aで始まるページ名")に合致するページに対し、特定
113       のアカウントにだけ編集を許可するためのオプションです。
114       ユーザーの設定などは管理者による設定変更が必要です。
115       編集認証は「ページの中身」「ページ名」いずれかに対してかける事ができま
116       す。パターンの指定は正規表現で行います。
117
118     3. 「凍結」機能により、ページ単位に編集を禁じる/許可する
119       凍結/凍結解除には管理者パスワードが必要です。
120       ページを書き換えるプラグイン(例: #comment プラグイン)は凍結されたページ
121       の中でも動作しますので、それらをページに含めた場合、管理者が定期的にそ
122       のページをクリンナップする必要があるかもしれません。
123
124     4. 指定したページの編集を禁じる($cantedit)
125       ページ名を事前に指定しておく事により、通常の操作によるそのページの編集
126       を禁じる事ができます。RecentChangesなどはこの機能を利用しています。
127       設定を追加/削除するためには管理者による設定変更が必要です。
128
129 ページを秘密にする、パスワードを秘密にする
130     PukiWiki全体を秘密の場所に置くことは簡単です。認証や暗号化をかける場合、
131     そのWebサーバーに関する知識が必要です。
132
133     1. Webサーバーの機能によって、PukiWikiを設置しているフォルダにベーシック
134        認証や、ダイジェスト認証などをかけることができるでしょう。
135
136     2. Webサーバーの機能によって、SSL(TLS)で通信経路を暗号化することができる
137       でしょう。これによってベーシック認証のパスワードやコンテンツを盗聴され
138       たり、何らかのきっかけでそれらが漏洩する可能性を低下させることができま
139       す。
140
141     PukiWikiのコンテンツを「部分的に」秘密にするためには、PukiWikiの複数の設
142     定やプラグインに関する知識が必要です。以下にいくつかの注意点をまとめます。
143
144     1. 公開用の入り口(index.php)とは別に編集用の入り口(例えばsecret.php)を用
145       意し、それぞれの設定を調整/改造することができます。
146
147      例:
148       * 公開するPukiWikiの編集を PKWK_READONLY で禁止する
149       * 編集用の入り口では、編集認証と閲覧認証を全てのページ名に適用する
150         (正規表現では '')
151
152     2. 編集認証($edit_auth) と 閲覧認証($read_auth) を利用する場合、それぞれ
153        の対象が一致するように設定する必要があります。例えば閲覧認証だけをかけ
154        ている場合、編集行為によってコンテンツが漏洩する可能性があります。
155
156     3. MenuBarやヘッダ/フッタは、編集認証/閲覧認証の影響を受けません。
157        (詳しくは:続・質問箱/11)
158
159     4. 他のページを雛型としてロードする機能($load_template_func)は、閲覧認証
160        の影響を受けません。現状の回避策は、この機能を無効にすることです。
161        (詳しくは:BugTrack/598)
162
163     5. あまり利用されていない一部のプラグインは、編集認証/閲覧認証に対応して
164        いません。そのためにページのコンテンツやページ名が漏洩する可能性があり
165        ます。編集認証/閲覧認証に頼る場合はこれらを事前に削除する必要がありま
166        す。(例:BugTrack/511)
167
168 プラグインについて
169     プラグインを組み込むことで、PukiWikiに様々な機能を追加/拡張することができ
170     ます。PukiWikiには70を越える標準添付のプラグインの他に、多数の自作プラグ
171     インが存在しています。
172
173     プラグインのスタイルは大きく分けて三種類あります。多くはWebコンテンツ(静
174     的なもの/動的なもの)を出力しますが、それ以外の動作をするものも存在します。
175
176     ブロック型プラグイン(block/convert)
177        行単位に特殊なWebコンテンツを挿入するものです。
178        ※コメント欄(#comment)、目次(#contents)、配下のページを一覧(#ls2)、最
179          新のN件(#recent)、ページのインクルード(#include)、投票ボックス
180          (#vote)など
181
182     インライン型プラグイン(inline)
183        HTMLエンティティを拡張した文字列をテキストの途中に挿入することで、
184        文章の途中にWebコンテンツを挿入するものです。
185        ※文章の色と背景色の操作(&color(red,yellow){文字列};)など
186
187     アクション型プラグイン(action)
188        プラグインごとに独自の効果を発揮するものです。
189        ※Wikiページの表示(read)、RSSの出力(rss)、ページ名の変更(rename)など
190
191 文字列置換ルール
192     いくつかの機能は、プラグインではなく文字列の置換か、それとの組み合わせに
193     よって実現されています。
194
195     テキストを表示する際にWebコンテンツと置き換えるタイプ
196        ※ハートマーク(&heart;)の描画、顔文字を画像に置き換える機構など
197
198     テキストを保存する瞬間に置き換え、結果を保存するタイプ
199        ※&now; を、「その時の現在時刻」に置き換える機構など
200
201 InterWikiについて
202     InterWiki とは、WikiとWikiをつなげる機能です。例えば
203     [[Wikiサイト名:ページ名]]
204     このように記述することで、そのWikiの特定のページに対するリンクを簡単に出力
205     させる事ができます。
206     ※Wiki以外のサイト、例えば検索エンジンへのURIを生成することも可能です
207
208     InterWikiを活用したテキストフォームは #lookup プラグインによって作成するこ
209     とができます。
210
211     この機能は Tiki からほぼ完全に移植されています。
212     詳細は [[InterWiki]] のページを参照してください。
213
214 Wikiの様子を見る
215     Wikiの更新状況(更新された順に並べた一覧)は RecentChanges という特殊なペー
216     ジからチェックすることができます。
217
218     #recentプラグインはこの内容をコンパクトなリストとして表示します。
219       ※デフォルトでMenuBarに追加されています
220
221     rssプラグインはこの内容をRSSのフォーマットで提供することができます。
222       出力方法の例:
223         RSS 0.91 index.php?plugin=rss
224         RSS 1.0  index.php?plugin=rss&ver=1.0
225         RSS 2.0  index.php?plugin=rss&ver=2.0
226
227 関連項目
228     INSTALL.txt (インストールとアップグレード)
229
230     標準添付されているプラグインの簡潔な説明は、[[PukiWiki/1.4/Manual/Plugin]]
231     のページを参照して下さい。
232
233     その他、リリース版の基本的な使い方に関する情報はPukiWiki公式サイト
234     をご覧下さい。以下のようなコンテンツが特に有用です。
235
236     FAQ        https://pukiwiki.osdn.jp/?FAQ
237     質問箱     https://pukiwiki.osdn.jp/?%E8%B3%AA%E5%95%8F%E7%AE%B1
238
239 バグ
240     PukiWikiのセキュリティに関する情報は以下でまとめられています。
241     https://pukiwiki.osdn.jp/?PukiWiki/Errata
242
243     バグ報告は devサイトまでお願いします。
244     (我々はPukiWikiでPukiWikiのバグトラッキングを行っています)
245     https://pukiwiki.osdn.jp/dev/?BugTrack
246
247 歴史
248     PukiWikiは、結城浩さんが作られたYukiWikiの仕様を参考に独自に開発されまし
249     た。PukiWiki バージョン1.3まではyu-jiさんが個人で製作していました。
250
251     バージョン1.2.1 から、RecentChangesのRDF/RSSを出力できるようになりました。
252
253     バージョン1.3.1b 以降はPukiWiki Development Team によって開発が続けられて
254     います。
255
256    バージョン1.4.5 から、RSS 2.0 を出力できるようになりました。
257
258 謝辞
259     PukiWiki Development Teamの皆さん、PukiWikiユーザの皆さんに感謝します。
260     PukiWiki を開発した、yu-ji(旧sng)さんに感謝します。
261     YukiWiki のクローン化を許可していただいた結城浩さんに感謝します。
262     本家のWikiWikiを作ったCunningham & Cunningham, Inc.に 感謝します。
263
264     * yu-jiさんのホームページ   http://factage.com/yu-ji/
265     * 結城浩さんのホームページ  http://www.hyuki.com/
266     * YukiWikiホームページ      http://www.hyuki.com/yukiwiki/
267     * Tiki          http://todo.org/cgi-bin/tiki/tiki.cgi
268     * 本家WikiWikiWeb       http://c2.com/cgi/wiki?WikiWikiWeb
269     * WikiWikiWebの作者(Cunningham & Cunningham, Inc.) http://c2.com/