PostTweetプラグインというのを使って、MTOSでブログを書いたら、その情報を Twitter に投稿しているのだが、昨日、MTOS を別のサーバに移行したら、「Twitterへの投稿に失敗しました」というエラーが出るようになってしまった。
MTOS のシステムログを見ると、
PostTweet: Twitterへの投稿に失敗しました。(twitterから応答を得られません。(post on Net::OAuth::ProtectedResourceRequest=HASH(0x1ffeebc0) failed: 403 Forbidden at /usr/local/share/apache/hosts/blog.netandfield.com/www/mt/plugins/PostTweet/extlib/Net/OAuth/Simple.pm line 721. ) )
って出てるんだけど、何が問題なのかこれじゃわからんなあ。ハッシュの中身を表示してくれんと。
で、ver1.03を使ってたんだけど、作者(エムロジック株式会社さん)のサイトを見てみると、ver1.06が出てたので入れ替えてみた。
そしたらやっぱり駄目。エラーが出て Twitter には投稿できない。
でも、システムエラーの内容が変わった。
PostTweet: Twitterへの投稿に失敗しました。(twitterから応答を得られません。(POST on http://api.twitter.com/1/statuses/update.xml failed: 403 Forbidden - <?xml version="1.0" encoding="UTF-8"?> <hash> <request>/1/statuses/update.xml?oauth_timestamp=1354623557&oauth_consumer_key=JFAXXXXXR5GtsonDhjvxA&status=%E3%80%8C%E3%81<途中略>%80+-+http%3A%2F%2Fbit.ly%2FXXCTFF&oauth_signature=w9PXXXXm4%2FUTIp68eiGXXXXX98w%3D&oauth_nonce=XXXXX436&oauth_token=XXXXXXXXX3-VW4DZ1tNqnka9nE3iXXXXXXXXXXXXXXX19W1JUoVnWy&oauth_version=1.0&oauth_signature_method=HMAC-SHA1</request> <error>Status is a duplicate.</error> </hash> at /usr/local/share/apache/hosts/blog.netandfield.com/www/mt/plugins/PostTweet/posttweet.pl line 572 ) )
ああ、投稿時にブログの URL を bit.ly で短縮 URL 化してるんだけど、そこで引っかかってるのね。
サーバを移行したら、bit.ly の API Key とか取り直さないといかんのかね?
面倒くさいので、URL 短縮サービスを TinyURL に変更。
これで解決した。
でも・・・前回移行した時は、こんなエラー出なかったような・・・