PukiWiki 1.4.4

1.4.3までのセキュリティアップデートの他、スケーラビリティの向上、初期化処理の改善による高速化、携帯電話対応の強化など、今までと同じ使い勝手を保ったまま、管理者も利用者も便利になる様々な変更が加えられています。



1.4.3からの変更点

これまでの変更点は、以下のページを参照してください。

  • PukiWiki/ダウンロード/1.4? -- 1.3.xからの変更点
  • PukiWiki/ダウンロード/1.4.1? -- 1.4からの変更点
  • PukiWiki/ダウンロード/1.4.2? -- 1.4.1からの変更点
  • PukiWiki/ダウンロード/1.4.3? -- 1.4.2からの変更点

スケーラビリティの向上

初期化処理の見直し: セキュリティ向上および軽量化 (init.php)

  • dev:開発日記/2004-06-22 初回起動時にパーミッションチェックの結果をまとめて報告する
  • dev:開発日記/2004-06-28 cmd= パラメータに値が渡されているとき、plugin= の値を無視する
  • dev:開発日記/2004-06-30 チェック前の文字列をメモリに残さない
  • dev:開発日記/2004-07-03
    • 不要なグローバル変数を多数排除
    • $_GET['msg']を禁止
    • GETがPOSTと同じキーを持っていた場合、POSTの内容を優先する
  • dev:開発日記/2004-07-11
    • $_GET['pass']を禁止
    • $get, $post, $cookie は、グローバル変数を(コピーせず)参照する
    • 'encoding_hints' の内容が空文字列かどうかをチェックする

PukiWikiを容易に三分割できる様に修正

  1. Webサイトに露出しなければならないプレゼンテーション部分 (index.php/pukiwiki.php, IMAGE_DIR, *.css および *.js)
  2. 複数のPukiWikiで共有可能な部分 (LIB_DIR以下)
  3. PukiWiki一本ごとに固有のデータ (DATA_HOME以下)
  • dev:開発日記/2004-07-24 index.php を追加
  • 画像ファイルを一箇所(IMAGE_DIR)に集約 (face画像、pukiwikiロゴ)
  • dev:BugTrack/509 ディレクトリの位置をハードコードしているファイルを多数修正 (See also: dev:BugTrack/147, dev:BugTrack/656, dev:開発日記/2004-06-19)
    • 定義を追加: IMAGE_DIR (画像ファイル類)
    • 定義を追加: LIB_DIR (ライブラリ)
    • 定義を追加: DATA_HOME (PukiWikiごとに固有のデータ)
    • 定義を追加: LANG_DIR (言語ファイルのある場所)
    • 定義を追加: JCODE_DIR (mbstring.phpが必要とするjcode.phpの場所)
  • versionlistプラグイン:
  • refプラグイン: UPLOAD_DIRの位置によらずインラインイメージの出力が可能となる様に plugin_ref_action() を追加 (dev:BugTrack/658)
  • dev:開発日記/2004-08-01 ライブラリとして使われうるファイルをLIB_DIRに移動

携帯電話およびPDAなどからのアクセスに対応

  • 組み込みWebブラウザ向けのユーザーエージェント文字列を追加
    PlayStation BB Navigator(*1), i-mode and FOMA, Vodafone,
    EZweb, WAP phone, ACCESS "NetFront" / "Compact NetFront"
    and thier OEM, Opera(for embedded), Planetweb,
    DreamPassport, Palm "Web Pro", ilinx "Palmscape" / "Xiino",
    Sharp PDA Browser, Windows CE, WebTV
    (*1 PC上のWebブラウザと同等の表現能力があるものとして登録)
  • 設定の集約 (keitai.ini.php)
  • (Related: dev:BugTrack/581, dev:開発日記/2004-07-03, dev:BugTrack/626, dev:BugTrack/628, dev:BugTrack/637, dev:BugTrack/646)

[CONTRIBUTION] 日本の携帯電話対応 by みこ

(See dev:BugTrack/627 for detail)

  • 日本で使われている顔文字をface画像に置換するための設定を追加
  • 携帯電話ベンダ固有のコードへ顔文字などを置換する設定を追加
  • 日本で使われる表現「汗」(当惑している様子) のフェイスマークを追加

セキュリティの向上

  • dev:開発日記/2004-07-11 index.html の追加 (ディレクトリの覗き見を阻止)
  • dev:開発日記/2004-07-18 管理者パスワードのためのシステム関数を追加
    • 認証失敗の度に2秒のウェイトをかけることで、攻撃者を妨害する
  • dev:BugTrack/528 pcommentをネストした場合の脆弱性
    • 無限ループを抑えるハックを追加
  • dev:開発日記/2004-08-09 includeプラグインにリミッターを追加 (4ページまで)
  • dev:BugTrack/666 calendar_viewerにリミッターを追加 (1テーマ1回まで)
  • dev:BugTrack/652 .htaccess の追加 (Apache限定: 意図しないアクセスを禁止)
  • dev:BugTrack/654 attach.inc.php プラグインで、存在しないページにファイルを添付できてしまう

セキュリティの向上: XSS脆弱性の修正

デフォルト設定の調整 (*.ini.php)

  • RecentChangesの件数を若干短く($maxshow: 80 => 60)
  • RecentDeletedをデフォルトで有効に ($maxshow_deleted: 0 => 60)
  • バックアップ間隔を短く、世代を多く、データ喪失までに必要な日数を長く
      $cycle:   6時間 => 3時間
      $maxage: 20世代 => 120世代
         6 x 20 (5日) => 3 x 120 (15日)
  • 見出し行に固有のアンカーを自動挿入する ($fixed_heading_anchor: 0 => 1)
  • preformatted text の際、先頭のスペースを一つ取り除く ($preformat_ltrim : 0 => 1)
  • POP/APOP before SMTP: 自動認識する(サーバーが対応可能であればAPOP)
  • 英単語で指定したエモーションについて、画像のALT属性を括弧で囲む (例: sad => [sad]) (dev:開発日記/2004-07-28)

重要な問題の修正

  • dev:BugTrack/639 memoプラグイン: カンマ以降の文字が消える / ダブルクォートで囲んだ場合、ダブルクォートが消える
  • dev:BugTrack/655 attach.inc.php プラグインで、ATTACH_PASSWORD_REQUIREを有効にした時に、添付したファイルが削除できなくなる

ネットワーク関連の修正

  • dev:BugTrack/635 proxy.php のバグ (過剰判定、かつ間違っている)
  • dev:BugTrack/638 TrackBack受信件数が多く表示される
  • dev:開発日記/2004-07-17 POP/APOP before SMTP
    • 動作しない状態であったAPOPが動作する様に修正
    • STATおよびQUITコマンドを発行する様に修正

軽微な問題の修正

  • dev:BugTrack/577 renameプラグインでXTMLパースエラー
  • dev:開発日記/2004-08-06 XHTMLが許容しない '&' を '&' に修正
  • dev:BugTrack/619 いくつかのファイルで不揃いだった改行コードを統一
  • dev:BugTrack/622 E_ALL や safe_mode の際に表示されるWarning/Noticeの対応
  • refプラグイン/attachプラグイン: KBをより正確に表示する (1024バイト換算に)
  • menuプラグイン: サブメニューの名前を容易に変更できる様に、define 'MENU_SUBMENUBAR' を追加
  • dev:BugTrack/653 topicpathプラグイン: 1つ親のページへのリンクを外すことができてしまう (versionlistプラグインでtopicpathのバージョンがでない)

ユーザーインターフェースの修正

  • 積極的にUsageおよびエラーを表示する (現状は一部のプラグインのみ)
     例:
       #img(): Usage: (URI-to-image[,right[,clear]])
       #include(): Included already: [[include_test]]
       #calendar_viewer(): You already view: 数百件あるカレンダー
  • imgプラグイン:
    • URIを一つ与えるだけで動作する (従来は引数が2つ必要)
    • 3つ目の引数に 'clear' を与えると、画像と同時に回り込みを解除するコードを挿入する
  • menuプラグイン: メニューバーを表示しているときはメニューを表示しない(dev:BugTrack/670)
  • paintプラグイン: 出力するデータの修正: #img(,clear) の代わりに #clear を使う
  • popularプラグイン: 現在読んでいるページへはリンクされない (dev:BugTrack/676)
  • recentプラグイン: 現在読んでいるページへはリンクされない (dev:BugTrack/676)
  • refプラグイン: 'ref(filename,pagename)' という古い記法で指定した(はずの)添付ファイルが見つからない場合、従来の様に "file not found" と表示する代わりに、あいまいさの無い新しい記法 'ref(pagename/filename)' の利用を促すメッセージを表示する(dev:開発日記/2004-08-26)

コードの可読性を高めるための修正

  • dev:開発日記/2004-07-18 内部関数名の変更: sanitize() => input_filter()
  • dev:開発日記/2004-07-31 空白しか含まない行の空白を削除
    • 関数の直前に空行を追加
    • 冗長なコメントの削除、コメントの追加
    • グローバル変数 $get / $post の代わりに $vars を使用する様に修正

基礎コンテンツの修正および拡充

(dev:BugTrack/644, dev:開発日記/2004-08-16 など)

  • pukiwiki.ini.php のコメントを整理/追加
  • デフォルトコンテンツの整備:
    • InterWikiName: YukiWiki、ウヰキエリア、devサイトを修正
    • PukiWiki: devサイトおよびSourceForge.jpのリンクを追加
    • プラグインマニュアルを同梱 (PukiWikiのページからアクセス可能)
    • 冗長なコンテンツを削除・マージ
    • pukiwiki.org, pukiwiki-dev のバナーアイコンを標準添付

Thanks to

  • バグ報告をしてくださった皆様
  • バグ修正をしてくださった皆様
  • pukiwiki.org や dev サイトがより使い易くなる様に、相互にリンクを張ったりコメントを加えてくださる皆様
  • 自分に迷惑をかけることをいとわぬ冒険者?
  • pukiwiki.org や devサイトや WikiWikiWeb の将来について模索しているWeb委員の皆様
  • EclipseプラットフォームおよびPHPプラグインの開発や日本語化に携わった皆様 (いまや、これ無しには…)
  • Zend Studio (過剰なグローバル変数、未初期化の変数、その他まずいコードを沢山見つけてくれた)
  • そして…PukiWikiを利用してくださっている皆様

1.4.4 Special thanks to

  • 組み込みデバイスでのWiki生活をより自然なものとするきっかけを与えた: みこ?さん
  • 今までずっと pukiwiki.org を支えていた: reimyさん
  • 旧 pukiwiki.org のデータ移転と新サーバーの確保などに奔走した: ゆう?さん
  • 新しい pukiwiki.org への移転をあっという間に果たした: jjyunさん、けじゃ?さん、teananさん、merlinさん

ダウンロード

  • ※それぞれファイル名をクリックするとミラーサーバー一覧が表示されますので、お近くのミラーサーバーからダウンロードして下さい
  • ※Windows環境であれば、+Lacha デラックス版などのソフトウェアでtar.gz形式のパッケージを展開できます。

フルセット (特別版:PHP4/PHP5両対応) ※PHP5で動作しない部分の修正以外は従来版と同一です

ファイルサイズ
pukiwiki-1.4.4_php5.tar.gz226.0 KB
pukiwiki-1.4.4_php5.zip320.2 KB

フルセット (従来版:PHP4のみ対応)

ファイルサイズ
pukiwiki-1.4.4.tar.gz224.6 KB
pukiwiki-1.4.4.zip317.4 KB

1.4.3から修正/追加されたファイルのみ

ファイルサイズ
update_1.4.4.tar.gz198.1 KB

ファイル一覧・MD5ハッシュなど

インストール

tarを使った展開について (パーミッション設定済み)

(PukiWiki 1.4.4より) リリースパッケージは、専用のスクリプトによってあらかじめパーミッションを修飾してあります。そのため、サーバー側でtarコマンドを使える環境であれば、以下の様にpオプションを追加して解凍するだけですぐに動作します。

tar pzxf pukiwiki-1.4.4.tar.gz

Internal Server Error が出る場合について

(PukiWiki 1.4.4) PukiWiki 1.4.4 から .htaccess ファイルを添付する様になっていますが、Apache Web サーバーの設定によっては "Internal Server Error" を起こす場合があります。その場合、以下をお試し下さい。

症状1

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

原因:

  • PukiWikiを設置したい場所で .htaccess による設定変更が許可されていない (特に "AllowOverride Limit" でない)

回避策:

  • pukiwiki-1.4.4/.htaccess、および pukiwiki-1.4.4/skin/.htaccess を削除する

解決策:

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

症状2 (Apache 1.3.32以降):

  • Webブラウザに "Internal Server Error" と表示される
  • Webサーバーのエラーログに "Regex could not be compiled" というエラーが記録される

原因:

  • Windows 環境向けに記述した正規表現(ファイルの大文字小文字を無視する)に、元々 Apache 1.3 系 (が利用しているライブラリ) が対応していなかった。しかし異常時のエラー処理が今まで存在しておらず、1.3.32から盛り込まれた。

解決策:

  • /.htaccess より、当該の正規表現を取り除く
修正前 <FilesMatch \.(?i:ini\.php|lng|txt|gz|tgz)$>
修正後 <FilesMatch \.(ini\.php|lng|txt|gz|tgz)$>

補足:

  • この正規表現はWindows環境にとっては冗長です。意図したかった事と同様の処理は、既にApacheのソースに記述されています。
  • Apache 2.x ではこのエラーは発生しません。正規表現は (Unix環境であれば) 期待通りに動作します。
  • この正規表現はCVS版から取り除かれました。将来のPukiWikiには収録されません。
  • より詳しい情報は dev:BugTrack/734 をご覧下さい。

TrackBack ファイルのファイル名互換性に関して

(PukiWiki 1.4.3より) 1.4.3より前のバージョンからのアップデートの場合、trackbackディレクトリ内に作成されるファイルの名前に互換性がなくなります。

以下のいずれかの処置を行なってください。

  1. trackbackディレクトリ内のtxt,refファイルを削除し、これまでに収集されたTrackBackおよびリンク元のデータを捨てる。
  1. 以下のパッチを当てる。この場合、dev:BugTrack/540の問題は残りますので、上記の方法をおすすめします。
     diff -u -r1.1 trackback.php
     --- trackback.php	01 Aug 2004 01:54:35 -0000	1.1
     +++ trackback.php	15 Sep 2004 00:20:19 -0000
     @@ -57,7 +57,7 @@
      // TrackBack Ping データファイル名を取得
      function tb_get_filename($page,$ext='.txt')
      {
     -	return TRACKBACK_DIR.encode($page).$ext;
     +	return TRACKBACK_DIR.tb_get_id($page).$ext;
      }
      
      // TrackBack Ping データ個数取得
    注意:下記のページの tb_convert.inc.php は、PukiWiki-1.4.4では動作しません。
参考
PukiWiki1.4で、TrackBack機能またはReferer機能を使用している場合の注意?
dev:開発日記/2004-03-18
dev:BugTrack/540

その他

※1.4.4ではファイルの配置が若干変わっているため、付属のREADME.txtも参考にして下さい

1.3.x系列からの移行方法


コメント

最新の10件を表示しています。 コメントページを参照

  • zip版を追加しました :) -- henoheno 2004-10-01 (金) 23:52:29
  • 上においてあるファイル (pukiwiki-1.4.4.tar.gz, pukiwiki-1.4.4.zip) の md5 が一致しないのだが... ちなみに sourceforge.net にあるミラーのものとは一致した. -- 通りすがり? 2004-10-02 (土) 20:57:05
    • 上記ファイル名をクリックすると、sfのミラー一覧が表示されます。ちょっと誤解させる様ですので、表記を修正しました (^^; -- henoheno 2004-10-02 (土) 22:49:24
  • Mac OS X の環境で1.4.3からアップデートし、wiki ディレクトリ内の自分のデーターファイルだけを移行したのですが、編集しページの更新を試みると以下のエラーメッセージがでます。attach backup cache counter diff trackback wiki のディレクトリは777に設定したのですが、他に何を試みるべきでしょうか? Runtime error Error message : Cannot write page file or diff file or other (サイト名) Maybe permission is not writable or filename is too long -- hoshino? 2004-10-13 (水) 11:48:37
    • それぞれのディレクトリ以下のファイルのパーミッションはどうでしょう? 666に設定してみてください -- merlin 2004-10-13 (水) 11:51:38
    • 上手くいきました。初歩的な質問に付き合ってくださって感謝します。#amazon に感激です。 -- hoshino? 2004-10-13 (水) 15:11:52
  • PukiWiki 1.4.4 を PHP5に対応させた特別版をファイルリリースに追加しました。お試し下さい。(詳細:dev:BugTrack/632) -- henoheno 2004-10-19 (火) 22:49:14
  • 1.4.xからの移行方法はどこかに書いてありますか? -- nemo? 2004-10-22 (金) 11:41:34
    • PukiWiki/インストール/1.4系列-1.4.4以降? -- 2004-10-22 (金) 20:31:51
  • ミラーサイトからサーバへ直接ダウンロードして、tar を使った展開をしただけなのに -- santa? 2004-10-25 (月) 20:23:15
    • 【↑の続きです】Warning: main(lib/func.php) [function.main]: failed to create stream: No such file or directory in D:\nsbtool\nsb_wiki\lib\pukiwiki.php on line 48 というエラーメッセージでブラウザからの参照ができないです。どなたか、解決済みの方はいますか? -- santa? 2004-10-25 (月) 20:24:31
    • そういうときこそmd5を比較してみて下さい > santa? -- henoheno 2004-10-26 (火) 08:27:41
    • 続・質問箱/403 に詳細を投稿しましたが、自己解決しました。でも、少し納得していないです。> henoheno -- santa? 2004-10-26 (火) 10:45:08
  • インストールを済ませデータベース初期設定するところで、Fatal error: Call to undefined function: mb_strcut() in c:\apps\apache\htdocs\xoops\modules\pukiwiki\pukiwiki.php on line 1133 ていうエラーがでてしまいます。投稿しようとしても、このメッセージがでてくるので投稿もできません。どなたか、このへんでつまづいた方いないですか? -- 初心者? 2004-11-14 (日) 05:12:29
    • ここはPukiWikiModのサポートサイトではない! -- 2004-11-14 (日) 08:52:52
  • うーん、$script='http://hoge.wiki.com/'; これでフォームからPOST送信するとindex.phpでつっかえて白紙のページになっちまうな… どこが悪いんだか… -- 2004-12-03 (金) 04:38:13
  • PHP4/PHP5両対応版 + apache2 + php5 で Fatal error: Call to a member function add() on a non-object in /var/www/localhost/htdocs/wiki/lib/convert_html.php on line 51 になってしまいます orz -- kope? 2004-12-25 (土) 13:02:47
    • OSが不明ですが、設定ファイルを書き換えたり、アップロードする際にファイルを壊していないか確認して下さい :) でもこうした話題は質問箱の方へどうぞ。 -- henoheno 2004-12-25 (土) 15:57:21
  • 複数のPukiWikiを一本のソースで構築する話題については WebTrack/28 -- 2004-12-26 (日) 20:10:32
お名前:

トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-01-21 (日) 00:03:37
Site admin: PukiWiki Development Team

PukiWiki 1.5.1+ © 2001-2016 PukiWiki Development Team. Powered by PHP 5.6.30-0+deb8u1. HTML convert time: 0.430 sec.

OSDN