質問箱/2645

カテゴリ
サマリWebプロキシサービス(Coral)を経由させたい
バージョン1.4.5_1
投稿者NOD_Chip?
状態保留
投稿日2005-03-05 (土) 17:59:22

質問

http://www.coralcdn.org/

↑のサイトで紹介されているWebプロキシサービス「Coral」を経由させて pukiwikiを表示させようと思っています。pukiwiki.ini.phpに

// Specify PukiWiki URL (default: auto)
$script = http://hogehoge.nyud.net:8090/pukiwiki/';
// Shorten $script: Cut its file name (default: not cut)
$script_directory_index = 'index.php';

と記述し実行したところ、 閲覧は出来るものの、ページの編集が出来なくなってしまいました。

具体的にはページの編集画面で更新ボタンを押すと、 アドレスバーに「http://hogehoge/pukiwiki/index.php~」と表示された後、 ブラウザにボタンを押す前と同じ画面が表示されます。

この画面でもう一度ボタンを押すと、今度は アドレスバーに「http://pukiwiki/index.php~」と表示された後、 ブラウザにはDNSで名前が解決できなかったと表示されます。

Coralは動的なページのキャッシュにも(おそらく)対応しており、 wikiの負荷対策に有効だと思います。 この方法ではCoralを使用することは出来ないのでしょうか?

回答よろしくお願いいたします。

Pukiwikiバージョン:1.4.5_1 Webサーバー OS:WindowsXP SP2 Cygwin + Apache 1.3.29-2 + PHP 4.3.10(Cygwinにてコンパイル)

ちょっと確認: Coral

回答

  • 文章を読む限りではキャッシュが効いてるだけだと思いますが? -- 2005-03-05 (土) 18:15:31
  • 回答ありがとうございます。アドレスバーの表示を考えると、キャッシュの問題ではないように思えるのですが・・・ -- NOD_Chip? 2005-03-05 (土) 19:06:43
  • こんにちは :) そのproxyサービスを通した場合は閲覧ができるものの、更新ができないということですね? HTTPのLocationヘッダがちゃんと受け渡されておらず、アクセスして欲しいURLが段々削れて行っている気がするのですが、Firefoxの Live HTTP headers のようにHTTPヘッダをチェックできるツールで、実際にやりとりされているデータをチェックされた方が良いと思います。 -- henoheno 2005-03-05 (土) 22:57:18
    • 後は、ボタンをクリックする前に、HTMLのソースを読んで本当に意図したURLがセットしてあるかformタグをチェックするような事ができると思います。 -- henoheno 2005-03-05 (土) 23:42:00
  • Live HTTP headersを使用していろいろ調べてみたのですが、「304が返ってきたのでキャッシュが効いているらしい」という事以外、特に変わったところは見当たりませんでした。またソースのfromの部分は
    <form action="http://hogehoge.nyud.net:8090/pukiwiki/index.php" method="post">
    となっており、ページの更新ボタンを押しても(アドレスバーの表示は変化するものの)ソースは変化しませんでした。別の対策として、同じディレクトリにpukiwikiを2つ設置し、一方を閲覧用(Webプロキシ有り)、もう一方を編集用(Webプロキシ無し)として、共通のデータを扱うようにしようと思ったのですが、やり方がわかりませんでした。参考になる記事はありますでしょうか? -- NOD_Chip? 2005-03-06 (日) 10:51:26
  • お疲れ様です。HTTPヘッダに異常が無いのに、アドレスバーのURLが削れる原因は何でしょうね? それが問題だと思います。PukiWikiの index.php を複数用意されたい技術的な理由がよくわからないのですが、特定の条件で $script をセットされたいということでしたら、一方の index.php の中でだけそれをセットすれば問題ないと思います。 -- henoheno 2005-03-06 (日) 17:33:11
  • 「index.php を複数用意されたい技術的な理由」は、閲覧のみの時にはWebプロキシのキャッシュが効いた状態でサーバーに負荷をかけないようにし、編集時にはプロキシを無効にしてアクセスさせたいということです。試しに同じディレクトリに2つ設置してみたのですが、2つ目にアクセスすると空のページが表示されてしまいました。どのようなファイル構成にすれば正しく動作するのでしょうか? -- NOD_Chip? 2005-03-06 (日) 20:03:43
    • 申し訳ありませんが、Coralのセットアップ方法や構成を知らない人間には答えかねるご質問になって来ているようです。空のページというのは例えばURLがおかしいために空のページに対する編集画面が出ているということでしょうか。であれば、なぜそうなるのかをハッキリさせる必要があります。もしもCoralサービスに関しても初めてであれば、そちらの経験を先に積まれるとよろしいかと思います。通常に掲示板には書き込みができるのか等、切り分けを行うための方法が各種あると思います。Coralについてまずは色々お試しいただき、今までの問題点を明確にして下さい。 -- henoheno 2005-03-06 (日) 20:37:32
    • ・・・ここで気持ちを切り替えて、折角なのでCoralについて調査中・・・ -- henoheno 2005-03-06 (日) 20:49:04
    • ・・・なるほど、URLの(FQDNの)末端に .nyud.net:8090 をつけると閲覧できるのですね。しかし返される内容に含まれるPukiWikiのリンクは Coral を利用しているかどうかなど考慮しませんから、.nyud.net:8090 のつかないリンクを表示するでしょうから、次にどこかクリックした時にはPukiWikiそのものへのダイレクトアクセス になるようですね。 -- henoheno 2005-03-06 (日) 20:54:12
    • 上に例をあげたように、お試しサイトを対象に少しいじってみましたが、この質問箱で言われているような挙動が見られません。どうすれば再現させられるでしょうか? -- henoheno 2005-03-06 (日) 20:59:04
  • はじめの質問の際に情報が不足しており、混乱を招いてしまったことをお詫びいたします。pukiwikiを2つ設置することについては本題と離れているため一度置いておきます。こちらでpukiwikiを設置する際に行ったのは以下のとおりです。
// Specify PukiWiki URL (default: auto)
$script = 'http://hogehoge.nyud.net:8090/pukiwiki/index.php';
// Shorten $script: Cut its file name (default: not cut)
$script_directory_index = 'index.php';

このようにすれば、各ページへのリンクをクリックしたときにリンクに「.nyud.net:8090」が自動的につくと思いまいした。 そして実際に設置したところ、初めの質問のような状態になりました。参考になりますでしょうか? -- NOD_Chip? 2005-03-06 (日) 22:03:02

  • 「Coral を利用しているかどうかなど考慮しませんから、.nyud.net:8090 のつかないリンクを表示するでしょうから」ここの部分の理由がよくわからないのですが、pukiwikiのソースを見ればわかりますか? -- NOD_Chip? 2005-03-06 (日) 22:06:41
  • 「PukiWikiはユーザーが Coral を利用しているかなど考慮しませんから、($script に値を設定しなかった場合)PukiWikiは .nyud.net:8090 が付いていないリンクを出力するでしょうから」ですです -- henoheno 2005-03-06 (日) 23:22:40
  • お試しサイトを丸コピーして、$scriptをセットした環境を用意してみました。 -- henoheno 2005-03-06 (日) 23:30:30
    • http://pukiwiki.sourceforge.jp/pukiwiki1.4tmp/
      • なるほど、確かに編集が通らないっぽいですね。Live HTTP header でチェックしてみましたが、この質問箱の最初の挙動は、やはりいずれもサーバー側から返される Location ヘッダが原因であるようです。実際に「編集」ボタンのクリックを繰り返すたびに Location ヘッダのURLが削れて、今回の場合最終的に http://pukiwiki1.4tmp/?cmd=edit&page=a になってしまいます。 -- henoheno 2005-03-06 (日) 23:37:11
      • このCoralの挙動をクリアしないと、PukiWikiの更新には使えなそうですね。単純に考えればCoralは閲覧に対するソリューションのようですから、「書き込みについては直接そのサイトに対してやってくれ」と考えているのかもしれません。他の掲示板などではCoral経由の書き込みはできるのでしょうか? -- henoheno 2005-03-06 (日) 23:46:43
  • 自宅のサーバーに設置してあるperlの掲示板cgiにはCoral経由のアクセスすらできませんでした。何か関係があるのでしょうか? -- NOD_Chip? 2005-03-07 (月) 10:12:12


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

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u2. HTML convert time: 0.406 sec.

OSDN