twitter のサンプルアプリを実行したときに
エラーになり、解決に時間がかかったので、対策をメモ
今回の原因はいくつかあり、
必要なパッケージが入っていなかったこと、そして
VMware Player で動かしていた ubuntu の時間がずれていたことが原因
まず、パッケージについては
php5-curl
が入っていないのが原因
なので、synaptics を起動して
検索で
php で調べ、
php5-curl をインストール
libcurl も必要なので、依存パッケージごとインストール
これで、パッケージ関連は問題無し
XAMPPでcurlやopensslなどのPHPエクステンションを有効にする方法
に記載されていた記事を参考にさせていただきました
ちなみに、今回は XAMPP ではなく ubuntu に apache2 をインストールしたものなので
微妙に違います
必要なパッケージをインストールしたら、
vim /var/www/test.php
でファイルを作成し
<?php
phpinfo();
?>
を記述して
:wq
で保存しコピー
firefox を起動し
http://localhost/test.php
へアクセスし
curl と openssl が使えること(enable になっていること)
を確認します
本来なら、これで解決なのですが
今回の場合は、まだこれだけでは
Could not connect to Twitter. Refresh the page or try again later.
となり、接続不能でした
原因を探るべく、検索した結果
Abrahamでエラー。
の時刻が調整されていないのでしょうか?
の言葉を見て思い出したのが、API 関連に関する制約でした
いろいろなAPIがありますが、Amazon や Youtube などには
一日にアクセスできる最大回数が決まっていたりします
(これの対策として、キャッシュ機能をつかうようなのですが、詳しいことはまだ不明です)
つまり、今回、日時がずれていて、この制約に引っかかったのではないかと思われます
ubuntu の時刻設定を修正したあと、再度アクセスした結果、無事にアプリの認証へと
すすむことができました