8月15日以降amazonのAWS仕様変更により、SHA256による署名を付与してリクエストしなければならなくなった。そこで、利用しているwp-tmkm-amazonプラグインを少し前に対応版へと変更していたのだが、今週から何故か急に使えなくなってしまった。(wp-tmkm-amazonプラグイン配布)
調べてみると、signatureの生成に失敗している。hash_hmacが入っていないんだろうと思い代替ライブラリを探して、そちらを利用するようにしてみた・・・が、状況が変わらない。(PHP_Compat_Hash)
環境が特殊だったため原因を突き止めるのにだいぶ時間が掛かってしまった。XREAはサーバによって環境が異なるのだが、このページが収容されているs75サーバは、PHP4でありながらhash_hmac()関数が利用できる。しかし、肝心のSHA256アルゴリズムが使えない。・・・なんて中途半端なんだ。有料のくせに! これならhash_hmac()関数が入ってない方がよっぽど対策しやすかった。
まぁ、というわけで上記代替ライブラリを利用しようとしても、既存のhash_hmac()関数と衝突してそのままでは利用できないのである。よって、代替ライブラリに下記のような変更を行って、無理矢理表示できるようにした。
まず、wp-content/plugins/wp-tmkm-amazonの下にPHP_Compat_Hash.tgzを解凍してコピー。~wp-tmkm-amazon/Compat/Function以下に5つファイルができる。その中のhash_hmac.phpを編集。最下部、39,40行目の関数名を以下のように変える。変える関数名はなんでもいいがhash_shmacとした。
if (!function_exists(’hash_hmac‘)) {
function hash_hmac($algo, $data, $key, $raw_output = false)
↓
if (!function_exists(’hash_shmac‘)) {
function hash_shmac($algo, $data, $key, $raw_output = false)
次に、wp-tmkm-amazon-function.phpを編集。190行目付近を以下のように修正。
$signature = base64_encode(
// ** 修正 (2009/6/22)
hash_hmac(’sha256′, $string_to_sign, $tmkm_amazon_settings['secretkey'], true)
↓
if (!function_exists(’hash_shmac’)) {
require ‘Compat/Function/hash_hmac.php’;
}
$signature = base64_encode(
// ** 修正 (2009/6/22)
hash_shmac(’sha256′, $string_to_sign, $tmkm_amazon_settings['secretkey'], true)
これで、無事に動作確認が取れました。
ブログ's tag archives
XREAでWPのtmkm-amazonプラグインが動かない件
Posted by 亡命者 in 8月 20th 2009
ブログが本に。表紙に期待。
Posted by 亡命者 in 3月 12th 2005
ライブドア パブリッシング
http://publishing.livedoor.com/
さきっちょ&はあちゅう 恋の悪あが記 Super edition (ブログブックス)
著者/訳者:中川 早紀 伊藤 春香
出版社:ライブドアパブリッシング( 2005-03 )
定価:¥ 1,260
単行本 ( 223 ページ )
ISBN-10 : 4779400023
ISBN-13 : 9784779400025
なかでも、この女子大生二人の本は、
表紙がお写真ということで、
かわいいのか、そうでないのか、しっかり判断できそうです。
すっと写メールみたいな写真ばっかりで、
もんもんとしてたんだ。
さあ、こい。どんとこい。
とりあえず、ブログの本なんかより、
写真集にしたほうが売れると思う。とりあえず。
写真いっぱい載ってたりしないのかな。
載ってたら、立ち読みするんだけど。
このサイトについて
このサイトでは主に以下のような記事を書いています。
- ネットワーク技術
- 家電やパソコンの使用記
- Linuxやプログラミング
- 映画やゲーム等のレビュー
- ネットで拾ったニュースと感想
Advertisment
Want to put your ad here, contact us

















