x-beatへの設置

PHP も使えるフリーサーバ X-BEAT(http://www.x-beat.com/ ) へのPukiWiki導入のポイントです。

導入時の問題と解決

問題点

  1. 添付ファイルを正常にダウンロードできない(画像として表示できない)
  2. RSSが正しく表示できない

問題発生の原因

  1. x-beatはバナー広告表示型サーバである*1
  2. 広告表示にはmod_layoutが利用される
  3. mod_layoutでヘッダーが影響をうけるためか強制的にtext/htmlになる
  4. PukiWikiで添付ファイルの展開(attach,ref)とRSS*2が、text/html以外で表示するため影響を受ける
  5. .htaccess の LayoutIgnoreURI で対象スクリプトの広告表示を抑止できる
  6. 広告表示の抑止で該当プラグイン(attach,ref,rss)は正常動作する
    1. しかしながらpukiwiki.phpの広告表示を抑止してしまうと、広告が表示できずにx-beatの規約違反となる*3

→結論:問題となるプラグインだけを広告抑止状態で稼動させるような修正が必要

問題の解決

該当プラグイン呼び出し用のdownload.phpを用意し、これを.htaccess の LayoutIgnoreURI に指定する事で問題は解決する。ただしこれも規約上微妙な感じがあるので、せめてdownload.phpは該当プラグイン以外の呼出を禁止する事にする。

具体的に修正が必要なファイルと手順は以下のとおり。(※添付のパッチはPukiWiki1.4.4へ対するものです。)

  1. download.php - 上記修正。pukiwiki.phpをコピーしてパッチを当てる&ref(): File not found: "download.diff" at page "続・質問箱/491";
  2. lib/download.php - 上記修正。lib/pukiwiki.phpをコピーしてパッチを当てる&ref(): File not found: "lib_download.diff.2" at page "続・質問箱/491";*4
  3. lib/html.php - RSSの呼出をdownload.phpから行う。下記の修正
    -	$link_rss      = "$script?cmd=rss10";
    +	$link_rss      = "http://hogehoge.s99.x-beat.com/download.php?plugin=rss10";
  4. plugin/attach.inc.php - ダウンロードをdownload.phpから行う&ref(): File not found: "attach.diff" at page "続・質問箱/491";
  5. plugin/ref.inc.php - ダウンロードをdownload.phpから行う&ref(): File not found: "ref.diff" at page "続・質問箱/491";
  6. .htaccess - 広告表示の抑止。.htaccessに(なければ作成して)以下の行を書く
    LayoutIgnoreURI */download.php
    1. PukiWiki/Download/1.4.4#o8882131の症状2の正規表現を修正しておく

その他、注意点など

  1. パーミッションを設定する

    パーミッション設定はreadme.txt、PukiWiki/Install等の記述を読み替えて設定する(755->705, 777->707, 644->604, 666->606 )

  2. 添付ファイルの所有者がapache、パーミッションが0600となり、FTP等での取得・変更・削除が出来なくなる
    1. attach.inc.phpの ATTACH_FILE_MODE を 0604に変更する事で解決する。*5
    2. パーミッション 0600 or 0400 のファイルを作ってしまった場合の対処

      パーミッションが 0600 or 0400 のファイルは添付ファイルを参照するにも障害が出ますし、 FTP ソフトでローカルにバックアップすることもできません。dev:開発談義/5に置いてある「chmodall.php」を使えば現状のパーミッションを一括変更できます。

  3. XREAとの関係について

    X-BEATの設定はXREAと酷似しているため、../xrea.comも参考のため、目を通す事をお勧めします。

コメント

PukiWiki/Install/xrea.com/CGIよりコメント移動)


*1 広告のためにXHTML invalidとなるので、実はPukiWiki1.4を使うのは好ましくないのだが、横に置いておく
*2 amazonも怪しいが使ってないので知らない
*3 xreaでは広告を手動挿入できるがx-beatでは出来ないため、単純に抑止できない
*4 このパッチにはRSS表示時の不具合があります。続・質問箱/491を参照
*5 このページの手順上のパッチを適用していれば0604になっている筈

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-02-07 (土) 05:35:32
Site admin: PukiWiki Development Team

PukiWiki 1.5.3+ © 2001-2020 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.251 sec.

OSDN