REMOTE_ADDR環境変数が同一になる環境ではカウンタが機能しない†
- ページ: BugTrack
- 投稿者: teuder
- 優先順位: 普通
- 状態: 完了
- カテゴリー: 本体バグ
- 投稿日: 2006-05-03 (水) 17:44:11
- バージョン: 1.4.6
- リリース予定バージョン: 1.5.4
旧タイトル: pukiwiki.ini.php内の$scriptにそのpukiwikiのURLを設定するとカウンターが効かなくなる
メッセージ†
- PukiWiki 1.4.6
- PHP 4.4.1
- OS:Mac OS X Server 10.4.6
pukiwiki.ini.php内の$scriptの値として、そのpukiwikiのURLを設定すると、カウンターが効かなくなります。
どうやらcounter.inc.php内で使われる$_SERVER['REMOTE_ADDR']の値として、なぜかpukiwikiサーバーそのもののIPアドレスが設定されてしまうために、カウンターの値が更新されなくなるようです。
- この問題が起きているのは、サーバーが稼動しているPC と同じPC のブラウザからPukiWiki にアクセスしている時ですか?それとも、別のPC からアクセスしている時ですか? --
- 因果関係が逆で、$script にURLを設定する必要がある環境というのはリバースプロキシやロードバランサーが使われており、そのためどのクライアントからのアクセスでもREMOTE_ADDRの値が中間サーバーのものになってしまって、結果カウンタが増えないということですね。対策としては 「REMOTE_ADDR が同一であってもカウンタ値を増やす」設定を追加するぐらいしかなそうです -- umorigu
- PLUGIN_COUNTER_IGNORE_REMOTE_ADDR という定数を導入しました。TRUEにすると REMOTE_ADDR を無視してカウンタをカウントアップします。主に、すべてのリクエストに対して REMOTE_ADDR が同じ値になってしまう環境に対応するものです commit:bf44d376c9 -- umorigu