Ticket #4166 (closed defect: fixed)

Opened 8 years ago

Last modified 8 years ago

Amazon仕様変更後のレビュー機能がPHP4環境で動作しない

Reported by: pnetan Assigned to: urabe
Priority: blocker Milestone: OpenPNE2.14.1.1
Component: 指定しない Version: 2.12.x & 2.14.x
Keywords: OpenPNE2.12.14.1 確認中 Cc:

Description (Last modified by urabe)

■現象

PHP4の環境(mhashが利用できない環境)で、Amazonのレビュー機能が利用できない

2009/08/21 追記

PHP4 でsha256 関数が使えないので、signature が空になり、Amazonから404エラーが返ってくる。2.14.1で行った変更ではPHP4の対応が完全に行えていない。

■原因

mhashが利用できない環境で、mhash関数が使われていたため、レビューが機能していなかった

2009/08/21 追記

  • PHP4 でsha256 が使えないので、signature が空になっていた

■修正内容

PEARライブラリのPHP_Compatを利用し、関数が定義されていない場合は、関数を読み込むよう修正

2009/08/21 追記

■関連情報

http://sns.openpne.jp/?m=pc&a=page_fh_diary&target_c_diary_id=21190より転記

タイトルの環境で、レビューを書こうとして、キーワードで検索しても検索結果が出てきません。
いろいろと調べたところ、mhashもhash_hmacのどちらもないためにAmazon.co.jpにクエリが送信できていないようでした。

webapp/init.inc

に、
include_once 'PHP/Compat/Function/mhash.php';
と追記すると正常に動作しました。 

■関連チケット

Change History

07/24/09 15:09:02 changed by pnetan

  • description changed.

07/30/09 10:19:22 changed by urabe

  • owner changed from nobody to urabe.
  • status changed from new to assigned.

07/30/09 11:53:43 changed by kiwa

  • keywords changed from 再現待ち to OpenPNE2.12.14.
  • version changed from 2.12.x to 2.12.x & 2.14.x.
  • milestone set to OpenPNE2.14.1.

早めに対応しましょう。

07/30/09 12:00:59 changed by kiwa

  • summary changed from 2.12.13のレビュー機能がphp4.4.2で動作しない to Amazon仕様変更後のレビュー機能がPHP4環境で動作しない.

07/30/09 12:02:01 changed by kiwa

  • priority changed from minor to critical.

08/03/09 10:14:49 changed by urabe

  • description changed.

以下のリビジョンでコミットしました。

08/03/09 10:25:10 changed by urabe

  • keywords changed from OpenPNE2.12.14 to OpenPNE2.12.14 確認中.

08/03/09 11:35:45 changed by shingo

他の箇所にあわせて、以下のように手動でコンポーネントをロードするやり方でもいいかと思います(修正するかどうかはお任せします)

require_once 'PHP/Compat/Function/mhash.php'

08/03/09 11:36:29 changed by shingo

  • keywords changed from OpenPNE2.12.14 確認中 to OpenPNE2.12.14 差し戻し.

08/03/09 11:57:10 changed by shingo

今回問題となる mhash() は「Services/Amazon.php」で使われている関数なので、その呼び出し箇所で

require_once 'PHP/Compat/Function/mhash.php'

とすればどうでしょう?
変更も最小限ですみます。

08/03/09 12:04:38 changed by urabe

  • keywords changed from OpenPNE2.12.14 差し戻し to OpenPNE2.12.14 確認中.

必要最小限の修正で済むように訂正しました

08/03/09 13:45:45 changed by shingo

  • keywords changed from OpenPNE2.12.14 確認中 to OpenPNE2.12.14 テスト待ち.

確認しました。

08/10/09 16:12:35 changed by imamura623

  • keywords changed from OpenPNE2.12.14 テスト待ち to OpenPNE2.12.14.
  • status changed from assigned to closed.
  • resolution set to fixed.

動作テストしました。問題無いようなので修正完了としこのチケットを閉じます。

08/12/09 13:44:46 changed by urabe

以下のリビジョンでAmazonパッチをコミットしました。

08/12/09 13:45:31 changed by kiwa

  • status changed from closed to reopened.
  • resolution deleted.

確認のため一度reopenします

08/12/09 13:46:04 changed by kiwa

  • keywords changed from OpenPNE2.12.14 to OpenPNE2.12.14 確認中.

08/12/09 19:22:47 changed by shingo

  • keywords changed from OpenPNE2.12.14 確認中 to OpenPNE2.12.14 差し戻し.

確認しました。 テストにまわしますが、前回の修正版を含んだ「完全パッチ」があればよいと思います

08/12/09 19:34:48 changed by urabe

#3982 #4166 Amazon の仕様変更の修正、PHP4での動作修正を含めたパッチをコミットしました。 r12622

08/12/09 19:41:13 changed by urabe

  • keywords changed from OpenPNE2.12.14 差し戻し to OpenPNE2.12.14 確認中.

08/12/09 19:46:50 changed by shingo

完全パッチ:AmazonECS4クラスが修正されなくなっています

08/12/09 19:59:21 changed by urabe

r12624 でコミットしました。

08/12/09 20:05:11 changed by shingo

  • keywords changed from OpenPNE2.12.14 確認中 to OpenPNE2.12.14 テスト待ち.

確認しました

08/14/09 20:24:04 changed by imamura623

  • keywords changed from OpenPNE2.12.14 テスト待ち to OpenPNE2.12.14.
  • status changed from reopened to closed.
  • resolution set to fixed.

パッチの動作確認しました。問題無いようなのでこのチケットを閉じます。

08/21/09 12:13:50 changed by urabe

  • status changed from closed to reopened.
  • resolution deleted.

08/21/09 12:30:43 changed by urabe

Amazon レビュー機能に完全に対応ができていなかったので、チケットをリオープンしました。

  • PHP4 でsha256 関数が使えないので、signature が空になり、Amazonから404エラーが返ってくる現象を確認

08/21/09 12:42:59 changed by kiwa

  • keywords changed from OpenPNE2.12.14 to OpenPNE2.12.14.1.
  • priority changed from critical to blocker.
  • description changed.
  • milestone changed from OpenPNE2.14.1 to OpenPNE2.14.1.1.

既にAmazon仕様変更の移行期間は終了しています。

該当の環境でレビュー機能が使用できない状態になっているので、緊急対応を行います。

08/21/09 13:04:22 changed by urabe

以下のリビジョンでコミットしました。

パッチファイルをコミットしました。

  • (2.10.x) すべての Amazon 対応を包括したパッチ
    • OpenPNE_2_10_x_Amazon_ticket_3982_4166_2_fix.patch
  • (2.10.x) 今回の修正分のみの Amazon 対応パッチ
    • OpenPNE_2_10_x_Amazon_ticket_4166_2_fix.patch
  • (2.8.x) すべての Amazon 対応を包括したパッチ
    • OpenPNE_2_8_x_Amazon_ticket_3982_4166_2_fix.patch
  • (2.8.x) 今回の修正分のみの Amazon 対応パッチ
    • OpenPNE_2_8_x_Amazon_ticket_4166_2_fix.patch

08/21/09 13:04:54 changed by urabe

patch ファイルは以下のリビジョンでコミットしています。

08/21/09 14:23:24 changed by urabe

  • description changed.

08/21/09 14:25:19 changed by urabe

  • keywords changed from OpenPNE2.12.14.1 to OpenPNE2.12.14.1 確認中.

08/21/09 17:18:37 changed by imamura623

  • status changed from reopened to closed.
  • resolution set to fixed.

動作テストしました。問題ありませんでしたのでチケットを閉じます。