質問箱/4212

カテゴリ
サマリ複数のリバースプロキシを介してのアクセス
バージョン1.4.6
投稿者KEN.?
状態質問
投稿日2007-12-28 (金) 13:22:54

質問

はじめまして。 私の勤める会社のWEBサーバーにpukiwiki 1.4.6をインストールして運用していますが、ローカルからのアクセスには問題なく動いているのですが、外部インターネットからアクセスすると、フロントページ表示後、リンクを2度3度とクリックしていくと、固まってしまう症状が出ていました。

そこで、WEBサーバー管理者とシステム納入業者に相談したところ、WEBサーバーへの負荷分散のために、リバースプロキシを2台並列に間にはさんで運用しているため、pukiwikiで生成したhtml内のリンクがフルパスになっているのが原因だろうと回答を得ました。

なんでも、外部からアクセスした時に、リバースプロキシAを通るかリバースプロキシBを通るかが順番に切り替わるらしく、1つのコンテンツ内で不整合がおこるのだそうです。 これが相対パスだと、A側ならA側で上手く通れるので、特に問題が出ないとのことです。

何か良い対処方法はないものでしょうか。 よろしくお願いします。

回答

  • 別の業者に相談、見積もりを取る。 -- 2007-12-29 (土) 10:05:19
  • うむ、ハード的な解決方法しかないのでしょうか・・・。 -- KEN.? 2007-12-29 (土) 21:52:20
  • ハード的な解決方法が何を指しているのか分りませんが、コンテンツに絶対URL(それ自体は適切なもの)が含まれているだけで破綻するようなシステム、あるいはそれを納入するような業者、それ自体は適切であるコンテンツを問題の原因であろうとするような管理者、この三つのうちのどれか、または全部を更新するのが最善の対処方法でしょう。おそらく、件のPukiWikiのみの問題では済まないことです。 -- 2007-12-30 (日) 13:04:12
  • 前の方にいわれる通り、事はpukiwiki に限りません。不完全なシステムによって不都合が出ているので、まずシステム構築を見直しましょう。(ちょっとその業者はひどい。お金を取れるレベルではありません。) -- 2007-12-30 (日) 15:01:32
  • 確かにおっしゃるとおり。業者のいるところで管理者に、私からもそのシステムがおかしいとはっきり伝えたのですが・・・。私はそのシステムを使う1人のユーザーに過ぎませんので、それ以上の要望を出来ません。なので、なにか設定の変更やプログラムの変更で対応できればと思っていたわけです。 -- KEN.? 2007-12-30 (日) 16:09:37
  • BugTrack2/213 - 相対/絶対 URI について($script、get_script_uri等) 、この問題が解決しないと難しいような・・・ -- 2007-12-30 (日) 19:46:39
  • この問題の解決の流れとして、今後相対or絶対を設定できるようになりそうな流れですね。新バージョンに期待しつつ、システムの設定についても勉強したいと思います。 -- KEN.? 2008-01-01 (火) 00:25:55
  • 今回私が書き込んだ構成と同じ構成の図をWeb巡回していて見つけました。http://www.thinkit.co.jp/free/marugoto/2/1/3/←ここのコラムの中のWebサイトの図です。同じ構成でPukiwikiを動作させている方はいらっしゃいませんか? -- KEN.? 2008-01-02 (水) 10:12:28
  • こういう構成って結構あるのかな?真剣に考えないとその手の構成をターゲットにした古典的なクラックツールでつつかれちゃうと思う。その構成でセキュリティを考えるより、オーソドックスな構成を選択するのが賢明だと思います。 -- 2008-01-02 (水) 13:28:33
  • おや?どうも原因は別にあるのかもしれません。IE6、IE7で閲覧すると固まってしまいますが、firefoxでは問題なくブラウズできます。早速サーバー管理者にそのことを伝え、原因の再調査を依頼しました。 -- KEN.? 2008-01-09 (水) 18:57:41
  • 原因の調査のためには、まず現象を正確に、そしてなるべく詳細に確認することが大切でしょう。
    こういう場所で質問をして、解決に繋がる回答をもらおうと思うならなおさらですね。 -- ぃぉぃぉ 2008-01-09 (水) 19:43:45
    • 固まるとは? ブラウザがフリーズする?
    • 固まる際にクリックしたリンクに法則はないか?(固まらないリンクや固まるリンクはないか?)
    • プロキシの内側からサーバーに直接アクセスした場合には固まらないのか?
    • 自分ならまずこの辺りを確認します。 -- ぃぉぃぉ 2008-01-09 (水) 19:44:46
  • プロキシでアクセス先を切り換えられたからといって、PukiWikiのせいで表示できなくなることは無い気が... -- ぃぉぃぉ 2008-01-09 (水) 19:50:42
    • 環境的な問題である可能性が高いが、それを回避するためにPukiWiki側で何か小細工ができないか、というご質問かと思います。WebサーバーとPHPの絡みで何か見つかるかもしれません…*1 -- teanan 2008-01-09 (水) 20:50:48
      • teananさんのおっしゃるとおりだと思います。そういう質問するには現状では情報が少なすぎるので、{19:43:45}あたりの助言を致しました。
        現状だと環境のせいですらなく、リバースプロキシを使用しなくても発生する(つまりPukiWikiやWebサーバの設定ミス)可能性だってあるわけで。 -- ぃぉぃぉ 2008-01-09 (水) 21:39:17
  • とりあえず、おかしな環境を改善するのが今回の不具合と関係なく先決、セキュリティ上も問題アリ。pukiwiki側の小細工があってもいいけどそれがうまくいってしまって、構成の改善のことがすっぽかされることは大問題。ただしここはpukiwikiの公式サイトなので質問からpukiwiki本体の改善を考えるのは当然ではあると思う。質問者が問題をきちんと認識してくれるといいのだが、問題の重要性を認識していないようです。上でもいわれている方がいますけど、その(間違った)構成だと、非常に巧妙な方法で乗っ取ることが可能ですよ。良く考えれば(パズルじみてますが)明らかですが。 -- 2008-01-09 (水) 22:31:09
  • たくさんのご助言有り難うございます。もう少し状況を補足いたします。「固まる」・・・は、ブラウザがフリーズするのではなくて、IEのステータスバーに「待機中」と出て、反応が無くなります。そして、時間が経つと表示されることもありますが、スタイルシートが上手に読み込めていなくて画面が崩れていたり、Jpeg画像が読み取れなくて×印の表示になっていたりします。時間が経っても、表示されない時は「Internet Explorer ではこのページは表示できません」となります。この状況に陥るのは、私の作っているpukiwikiのサイトのトップページを開いた後(最初のトップページ表示で固まったことはありません)、次のリンクをクリックした時にです。たまに2度目のクリックは固まらず、3度目に固まると言うこともあります。法則性は無いように思います。この固まった状態になった時、このサーバーにある、私の管理しているpukiwikiのページ以外のものも閲覧できなくなっています。ちなみに、質問にも書いたように、プロキシの内側のローカルな環境からは、何の不具合もなくアクセスできます。IEでもfirefoxでもです。ですから、pukiwiki側の設定ミスではないと、私は思っています。 -- KEN.? 2008-01-10 (木) 17:00:01
    • ということは、読めていないのは相対URIで記載された部分の様ですね。対処方としては、全て絶対URIに変更するというのがあると思います。
      pukiwiki.skin.phpで
      echo IMAGE_DIR . ....
      と言うようなところを
      echo 'http://xxxxx/yyy/' . IMAGE_DIR . ....
      と書き換えたり、
      href="skin/pukiwiki.css.php...
      の部分を
      href="http://xxxxx/yyy/skin/pukiwiki.css.php ...
      にする、とかで行けそうな気がします。 -- ぃぉぃぉ 2008-01-10 (木) 17:31:27
      • ごめんなさい、たぶん嘘でした。 -- ぃぉぃぉ 2008-01-10 (木) 22:42:27
  • 早速アドバイスいただき、有り難うございます。明日職場に行ったら試してみたいと思います。
    しかし、これで上手くいくようになった場合は、業者の見解と全く正反対と言うことになります。業者の意見は、絶対は使わずに、全て相対アドレスにするようにと言うことでしたので。結果が楽しみです。 -- KEN.? 2008-01-10 (木) 20:43:58
  • おっと、ごめんなさい。時間が経つと表示されることもあるということは、表示されないこともあるのですね。絶対パスとか、相対パスは関係なさそうです。そもそも、絶対URIか相対URIかはブラウザが判断して、ブラウザがリクエストを出す際には常に絶対URIで要求していると思います。時間が経てば表示されることもある、ということからいくと、単にプロキシサーバーが処理し切れていないだけではないでしょうか。
    業者の言う絶対URIや相対URIが関係あるとすると、アンサーデータの内容を解析して、次のリクエストに備えて先読みしているとか? そんなことはしていないとは思いますが^^;
    たとえば、最初に表示が出来た状態でctrl+F5で画面を何度か更新しても正しく表示されますか?
    FireFoxだと表示出来るというのは、FireFoxが独自でキャッシュをしていて、getリクエストを出さないから負荷が低くて問題が起きていないだけかもしれません。
    PukiWikiではないページに画像をたくさん貼り付けてそのページを何度も表示しても再現するのでは? -- ぃぉぃぉ 2008-01-10 (木) 22:39:57
  • もし、この現象が「今までは長い間正常に動作していたが、最近発生した事象」であれば、そのうち直る可能性もあります。もし、最近発生した事象だとすると、機器刷新でトラブルが発生している可能性があります。PukiWikiに限らず他からもクレームが出るでしょうから様子見もありかと。 -- Yoshii 2008-01-12 (土) 15:29:37
  • ぃぉぃぉ さんのアドバイスにそって、jpeg画像を15枚ほど貼り付けたページを作り、テストをしました。
    ・絶対アドレスでJpegを貼り付けたところ、ctrl+F5で何度更新しても正常に表示されました。
    ・相対アドレスでJpegを貼り付けたところ、ctrl+F5で何度更新しても正常に表示されました。
    この結果からして、リンクは絶対でも相対でも、正常に機能しているようです。そこで、pukiwikiのFrontPageを出して、ctrl+F5をしたところ、一発で固まってしまいました。ちょっと時間をおいて、今度はFirefoxでFrontpageを出して、ctrl+F5を行ったところ、2回目で固まりました。と言うことは、FireFoxでもIEと同じ症状が出ると言うことです。う~む、何が原因なのでしょうか・・・ -- KEN.? 2008-01-13 (日) 00:27:00
    • リバースプロキシの不具合だと思います。上記の結果(絶対パス、相対パスどちらでも表示できる)を業者に伝えて、きちんと調査するよう依頼するのが良いと思います。*2
      また、lib/func.phpでfunction get_script_uri()の一行目でreturn'./';とすると、とりあえず相対パスになるので、それで本当に固まらなくなるかどうか試してみてはいかがでしょうか。(そのまま運用しようとすると問題が出る箇所があると思いますが、とりあえずは動くはずです。)
      こんな感じ
      function get_script_uri($init_uri = '')
      {
        return './';            //<--- 追加
        global ....
      ...
    • ぃぉぃぉ 2008-01-13 (日) 04:12:26
  • lib/func.phpでfunction get_script_uri()を変更して試してみました。結果は、まったくこれまでと同じ症状です。つまり、原因は別にあると言うことですね。今度は、逆の方の、前にお教えいただいたスタイルシートなどを絶対パスにする方を試してみたいと思います。 -- KEN.? 2008-01-16 (水) 12:15:33
  • 早速スタイルシートの絶対パスでのテストをやってみました。結果はやはり同じです。つまり、絶対パスや相対パスと言うことが問題ではないと言うことでしょう。早速明日にも管理者に報告し、原因の再調査を依頼します。 -- KEN.? 2008-01-16 (水) 21:53:31
    • 確認お疲れ様でした。今度はちゃんと調査してもらえるといいですね。
      PukiWikiではない場合の動作確認ですが、同じ画像ファイルを15回表示しても、キャッシュされると思うので確認になりません。為念。pukiwikiのimageディレクトリの画像を全部表示するようなページだと、再現しそうだなぁ、と妄想。 -- ぃぉぃぉ 2008-01-16 (水) 23:00:30
  • ぃぉぃぉ さんをはじめとして、アドバイスいただいた皆様、ありがとうございました。あとは管理者と業者の腕次第という感じで、うまくいってくれるといいですが、期待して待ちたいと思います。 -- KEN.? 2008-01-18 (金) 08:08:25


*1 根拠なし (^^;
*2 こんな状況(相対パスなら問題ないと答えて済ませたり)でお金もらえるなんてうらやましいなぁ

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2008-01-18 (金) 08:08:25
Site admin: PukiWiki Development Team

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

OSDN