アングラ

2012年6月10日 at 9:24 PM

海外レンタルサーバhostmonster ~cronを用いたジョブ/処理の定時キック

容量無制限が売りのレンタル鯖hostmonster

当然やりたくなるのが、「定例的にサイトを巡回して他サイトのデータを取得/収集する」行為でしょう。この仕組みさえあれば2ちゃんねるまとめサイトみたいなものを作成する足がかりができます。

他サイトのデータを収集するには「wget」というLinuxのコマンドを使用します。

>  wget http://www.sample.com/index.html  -P /home2/[ユーザ名]/public_html/[FTPアカウント名]

このように指定すれば、対象サイトにWWWアクセスし、/home2/[ユーザ名]/public_html/[FTPアカウント名]ディレクトリに「http://www.sample.com/index.html」サイトのコピーを取得します。こうして定例的に集めたデータを整形して公開すればもうまとめサイト的なものが出来上がりです!簡単ですね!

wgetコマンドの詳細な使い方については「技林TOP > 自宅サーバ構築メモ > wget の使い方」を参照ください。

 

このコマンドを1時間に1回実行するようにhostmonsterのcPanelで設定してみましょう。

1.CPaneにログインし、「Cron jobs」アイコンをクリックします。

cPanel cron登録

2.本来Linux/Unixであれば、「crontab」という設定ファイルを編集していく流れになります。しかしcPanel上でビジュアルで簡単に設定を行うことができます。

以下設定を行います。

 ・Common Settings: 
  「Once an hour(0 * * * *)」を指定。毎時○時00分に、1時間おきに実行する設定です。

 ・Command:
  「wget http://www.sample.com/index.html -p /home2/tanaka/public_html/u」。
  これはご自身の環境にあった実行コマンドを指定します。

cPanel cron登録

3.「Add New Cron Job」ボタンを押せば登録されます。サイトデータの取得であれば、実行状況はFile Managerなどでファイルが生成されているかどうかで確認してください。

なお、上述のようにサイトのデータをひたすら取得する処理をcronに登録していると、hostmonsterよりアカウント停止の強制措置をくらう可能性があります。定期的に取得内容を削除/整理する処理もあわせて登録しておきましょう。

cron登録

4.もう少し付説しておきます。

① wgetを、ファイルの出力なしで実行する場合は、以下のようにコマンドを登録します(例)。「–spider」というオプション指定がファイルを作成しない記述になります。

> wget --spider -t 1 http://www.sample.com/cgi-bin/data_get.cgi 

え?ただアクセスしてサイトのコピーファイルを作成しないで何に使うの?と思うかもしれませんが、いいんです!これもまた使い道があります。

他のサイトもしくは自分のサイトに定期的にアクセスすることでサービスの継続利用を約束するような無料サービスはありませんか?あやぽんみたいな。これを叩けばサイトに「このリンクをポチッと叩いていただけると管理人の手間が省けます」みたいな記述を貼らなくて済むようになるでしょう。

ただ1点注意があります。アクセスはhostmonsterのサーバより行われます。Linuxサーバです。かつIPはいつも固定です。同じアクセスがサーバーっぽいところから定例的にやってくればアクセスされる側も疑問に思うでしょう。うまくやろうとするならもう少し勉強を重ねないといけません。

perlを実行する場合(例)は以下のように指定します。

> /usr/bin/perl  /home2/[ユーザ名]/public_html/[アカウント名]/[cgi-bin]/cgiファイル名.pl

実行するperlファイルは「cgi-bin」というフォルダを作成し、そこに格納します。その後実行権限に「705」もしくは「755」などを指定します。

実行するperlファイルの行頭に「#!/usr/bin/perl」というプラグマを指定している場合はファイル名のみの指定で構いません。

> /home2/[ユーザ名]/public_html/[FTPアカウント名]/[cgi-bin]/cgiファイル名.pl

PHPを実行する場合(例)は、以下のように指定します。

> php -c /home2/[ユーザ名]/public_html/php.ini /home2/[ユーザ名]/public_html/[FTPアカウント名]/[任意フォルダ]/phpファイル名.php

PHPファイルは「cgi-bin」フィルダ内に格納してはいけません。適当なフォルダを作成し、そこに格納するようにします。実行権限は標準のままで問題ないはずですが、「705」もしくは「755」で指定しておくのが無難です。

2 Comments

  1. Pingback: 楽天アフィリエイト 強制クッキー書き換えBOT | アフィリエイト収入

  2. Pingback: アフィリエイト収入 - FTPが使えないレンタルスペースでWebページ/ブログのバックアップを取得 ~getHTMLW

Leave a Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>



こちらの関連記事もオススメ!