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よりコメント移動)

  • 名無しさん 2003-02-11 (TUE) 14:46:32

    xreaと設定が酷似している http://www.x-beat.com/ について。x-beat はxreaのポート8080でPHPをモジュール動作できないので、public_html において、CGI用の動作設定が必要です。また、xreaと違って、広告の手動挿入が出来ません(広告が上下に出ます)。#!/usr/local/bin/php の挿入は不要でした。未解決の問題としては、質問箱にある通り、添付ファイルがうまく読めません。.htaccess弄ってみようかと。

    • 名無しさん 2003-02-11 (TUE) 16:38:11

      上記の犯人は恐らく広告です。広告表示を停止する事で正しく読み込める事を確認しました。shared_htmlだと広告挿入されないから発生しないのでしょう。どうも拡張子なしのファイルでmod_Layoutの特殊処理があるらしいので、あるいはattachファイルの拡張子をbinとかに変更すれば上手く通るかもしれない

      • madoka? 2003-02-11 (TUE) 17:49:02

        広告でしたか…。無料で使わせていただいているから仕方ないですね。色々勉強になりました。ありがとうございます。それにしても、本当にPukiWiki楽しいです(^^)

      • 名無しさん 2003-02-16 (SUN) 03:18:38

        x-beatで添付ファイルがうまく読めない問題は解決しました。UPLOAD_DIRフォルダを参照している個所が結構あったので、attachファイルの拡張子を変更するのはやめて、attachプラグインを呼び出すだけのdownload.php(内容はpukiwiki.phpと同等)を作成して、広告回避対象に設定しました。以下、対応概要。.htaccessに LayoutIgnoreURI */download.php を追加。pukiwiki.phpをコピーしてdownload.phpを作成、plugin呼出個所のみ残す。attachプラグインのopenfile呼出しのリンクを埋め込む個所を$scriptから~/download.phpに変更

        refプラグインでもattachのプラグインのopenfile呼出しを行う個所があるため、$scriptから~/download.phpに変更 が必要

    • 名無しさん 2003-02-12 (WED) 01:36:46

      追加の問題@x-beat。ページを編集して「ページの更新」ボタンを押すと、「更新の衝突」が出てしまいます。リロードすると、編集内容はちゃんと更新されています。広告がからんだLocationの不具合だと思います、が出たり出なかったりするのが謎…。

      • 名無しさん 2003-02-16 (SUN) 04:08:30

        一旦解決。更新しました~のページを出した上でLocationで読み直しているのか意味不明だったので、pukiwiki.php の289あたり header("Location: $script?".rawurlencode($post["page"])); を試しにコメントアウトしたら、パタっと出なくなりました。

      • 名無しさん 2004-08-21 (SAT) 03:29:30

        追記。RSSも上記でいうdownload.php 経由でないと、きちんとRSSとして認識されない。html.phpのlink_rssの修正が必要。

    • 名無しさん 2003-02-12 (WED) 05:27:39

      なぜか添付ファイルの属性が600になってしまいます(attachは707)そのためrefで画像の参照が出来ない。添付後chmodで変更しなければいけないのかな?

  • 続・質問箱/491より、1.4.4の内容でxreaからページを独立。
  • お疲れ様でした :) 動作実績/レンタルサーバー にとりあえず行を追加しておきました。 -- henoheno 2004-12-20 (月) 21:30:18
  • 現在のバージョンにおける設置方法を教えてもらえませんか? -- tkc? 2007-06-02 (土) 01:41:03
  • あー、現在だと色々変わっててこの通りでは対処できないんですね。 -- 2007-08-14 (火) 01:30:49
  • x-beat→DXBEAT!に変わったけど。なんか違うとこあるの? -- 2007-08-16 (木) 20:20:18
  • RSSが無改造でも表示されるよになったんだけど、他の人どう? -- 2007-08-29 (水) 13:55:19
  • x-beatがバナー表示によって無料サービスを提供してるのに、それを阻止するプラグインがPukiwiki公式サイトに載るのはいいことなのだろうか -- 2008-12-06 (土) 13:09:43

*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.2+ © 2001-2018 PukiWiki Development Team. Powered by PHP 5.6.39-0+deb8u1. HTML convert time: 1.217 sec.

OSDN