hetemlサーバーでTwitterBotを動かす。
![]()
まだ未公開ですがとあるTwitterボットをPHPで制作しています。PHPユーザーとして僕はかなり未熟なので、参考になるかどうか微妙な投稿になりますが私的メモとして。bot自体の作り方は下記サイトを参考にしました。この通りに作れば簡単にできてしまいます(勉強になるかどうかは微妙)。
連載:Twitterを100倍楽しむためのbot開発基礎講座|gihyo.jp … 技術評論社
で、この通りに作ってターミナルからPHPを実行すると上手くいったのですが、サーバー上で実行するときどうすんの?と。サーバーにファイル一式をアップして、SSH接続して同じようにコマンドを叩いたけどエラーが出て動かない…(ちなみに僕はサーバー初心者)。
サーバーはhetemlなんですが、hetemlのルールにしたがったコマンドの書き方が必要だそうです。
PHPファイル内に記述してあるパスは絶対パスにしておきます。またbotのPHPファイルの一行目には”#!/usr/local/bin/php5″と記述します。下記はターミナルから入力したコマンド。
cd /home/sites/heteml/ユーザーパス/web/botの置いてあるディレクトリ; /usr/local/bin/php5 ./bot.php;
これで動きました。
そして定期的にbotを動作させる為にcronを使います。hetemlはcronの設定がビックリするくらいに簡単でGUIの操作で可能です。アホな間違いですが、当初ボクはcronから直接botのPHPファイルを叩いていました。コマンドも何もないのに動くわけがない…。
調べると、どうやらシェルファイルを作ってコマンドを記述。そのファイルにアクセスするそうです。以下bot.shという名前などつけてサーバーの所定位置にアップロードします。
#!/bin/sh cd /home/sites/heteml/ユーザーパス/web/botの置いてあるディレクトリ; /usr/local/bin/php5 ./bot.php; exit;
さらにこのファイルのパーミッションを「700」に変更しておきます。
これでcronからコマンド実行 -> botが動作します。
ちょっとしたサーバーサイドの勉強になって得しました。なるほど。
しかしhetemlは本当に便利。なんでもGUI操作でできてバカになりそう。

