1

これが重複した質問である場合は申し訳ありません...検索して同様のアドバイスを見つけましたが、正確な問題を解決するものは何もありません。そして初心者の質問を許してください、CRONは私にとって新しいものです。

別のサイトの html DOM をスクレイピングし、その一部をデータベースに保存する codeigniter スクリプトがあります。このスクリプトを定期的に実行したいと思います。これにより、cronジョブを調べるようになりました。

私が持っているページは myserver.com/index.php/update にあります

curl を使用して cron ジョブを実行し、このページを実行できることに気付きました。もう少し安全にしたい場合は、次のように文字列を最後に置くことができます。

myserver.com/index.php/update/asdfh2784fufds

CIコントローラーでそれを確認してください。

これはほとんど安全なようですが、物事を行うための「正しい」方法とは思えません。

コマンド ラインから CI を実行する方法を調べたところ、次のような基本的なページを実行できます。

php index.php mycontroller

しかし、私がしようとすると:

php index.php 更新

うまくいきません。これは、外部ページの DOM をスクレイピングするために HTTP を使用する必要があるためだと思われます。

だから、私の質問:

HTTP アクセスを必要とする cron ジョブで codeigniter スクリプトを安全に実行するにはどうすればよいですか?

4

2 に答える 2

1

いくつかのオプションがあります。最も簡単なのは、スクリプトを$_SERVER['REMOTE_ADDR']実行する前に、スクリプトが同じマシンからのものであることを確認することです。

もう1つは、httpsHTTP認証を使用してwgetまたはcurlに使用させることです。

于 2012-04-05T17:41:11.127 に答える