2016.5.7
0からはじめるPHP#92【cronによる自動ツイート#5】
えーと、あれこれ触っているうちに分かったんですけど
別にSSLとかあんまり関係ないんじゃないかということでして。
試しに本番サーバーでいきなり動かしたら
https通信じゃないハズなのになんか動いたんで、まぁもう気にしないことにします。
っていうか
ローカルサーバーからあれこれできる方がそもそも信用性的におかしいんじゃないか?と思ったので、ローカルで実験することは一旦諦めることにしました。
まぁいちいちアップロードするのは割とだるいんですけど仕方ありません・・・・・・
ということで、色々すっ飛ばして
cronの実行をさせてみましょう。
cronに関して全然説明してなかった気がしますが、要するに
サーバーが自動的にプログラムを動かしてくれる仕組みだと思ってもらえれば良いかなと思います。
cronは普通にサイト運営してるとあまり目にしない仕組みだと思うのですが、別にそんな特殊なサービスじゃなく、大体のレンタルサーバーで使えるんじゃないかなぁとは思います。僕が前に使っていたロリポップでも使えるみたいですし。安いプランだと最短間隔が5分と、多少の制限はあるんですけど・・・・・・。
とりあえず僕が今使ってるエックスサーバーを例にとって説明してみようかなと思います。
サーバーパネルにこんなページがあります。
それをこう書けば
指定したファイルを毎分実行するcronが出来上がります。
留意すべきはコマンド部分ですね。まず前半の
/usr/bin/php5.6ですが、まぁ見たら分かる通りPHPです。これがないと動かないらしいです。
僕は普通に推奨されているPHP5.6を使っているのでこの記述ですが、下位バージョンを使ってるのであればそれに応じて変更すれば宜しいわけですね。
で、スペースを挟んで書いてあるのが、まぁ見て分かる通りファイルの有り処ですね。ドキュメントルート外に置いてあるのでそもそもアクセスできないはずですが一応アドレスは隠しておきます。
/homeから始まってるのはなんなんだ?って話ですが、これは
「絶対パス」ではなく「フルパス」で指定しているということです。
フルパスの調べ方はまぁテキトーに色々やってればできますし、PHPにもそういった定数があります。__FILE__でしたっけね。それをechoすればでてきます。
上の例だと
/home/(ID)/(独自ドメイン)/(フォルダ名 or public_html)/(実行ファイル名).php って書式になってますね。これで動きます。
まぁプログラム自体は
前回紹介したものをごにょごにょすればできるんで省略しますが、大体こんな感じにツイートされます。https通信だなんて大仰なことは
一切やってません(笑)(笑)(笑)
とりあえず、これでtwitterとPHPの連携ができるようになりました。APIとか全然使ってないので全然本格的なものじゃないんですけど、とりあえず動くものを作れたということで。
ここ数日悩んでた課題を
すべて放棄するという形で終わらせてしまったのですが、まぁ僕がもっと賢くなればそのうちローカルでもtwitter連携ができるようになるんじゃないでしょうかね。そもそもムリかもしれないですけど(笑)
とりあえず今後の方針としては、
最近とてもやる気なさげなこの日記を(比較的)活発になってるtwitterとつなげることで
僕自身のモチベを上げると共に、プログラムとtwitterの連携が上手く行ったということで今度は
Ruby on Railsでtwitterサービスをなんか作ってみようという話にしていきたいなーと思ってます。
あ、ちなみに6日の日記は、このプログラムの試運転も兼ねて非公開記事にしてます。これをうまくスキップして7日の記事がツイートされれば成功です。
内容に関しては別に大した話じゃないのでここで書きますと
ただ僕の荒んだ感情を面白半分に書きなぐっただけのラクガキです。せっかくの機会なのでこういう形で実験することにしました。記事自体は相変わらず10年後に公開設定してます(笑)(笑)
ついでに明日は
旅行の話を蒸し返す予定です。絶望的な天気予報にろんぐさんはどう立ち向かうのか・・・・・・!?!?!?←