cPanelを使用して私はcronjobを設定したいと思います。 投稿データをインポートするPHPページがあります。 しかし、そのインポートページに到達するには、私はログインページを渡さなければなりません。cronjob実行中のPHPウェブアプリケーション
できますか?
cPanelを使用して私はcronjobを設定したいと思います。 投稿データをインポートするPHPページがあります。 しかし、そのインポートページに到達するには、私はログインページを渡さなければなりません。cronjob実行中のPHPウェブアプリケーション
できますか?
GET経由でアクセスされるPHPスクリプトを作成し、2つのPOSTリクエストを実行することができます。
PHP CURLを使用すると、ログインページとインポートページの両方でPOST要求をシミュレートできます。
ステップ
ログインページにCURLとPOSTリクエストを送信します。 CURLにCookieを保存するように指定します(Cookie jar、正確な構文についてはread the manual)。
セッションクッキーがクッキージャー(ファイル)に保存された後、は、最初のPOSTから受け取った認証を使用して、インポートページに別の投稿を送信します。
あなたがここにCURL POSTに関する詳細な情報を見つけることができます:あなたのcronパネルのカール
を使用して
"GET経由でアクセスするPHPスクリプト"私は理解していません。説明できますか? – user1254065
2番目の手順でクッキーを読むにはどうしたらいいですか? – user1254065
これを行うための2つの簡単な方法があります。次のコマンドを入力します。
curl --silent --compressed curl http://example.com/script.php > /dev/null 2>&1
/dev/null 2> & 1は、crontabタスクの実行時にメールアラートを無効にします。ただし、アクセスしているスクリプトでログインの確認が必要な場合は、このオプションは機能しません。すべてのサーバーは、このWebアドレスにpingを実行していますが、どの形式でも入力していません。したがって、ログインフォームを使用している場合は、ステップ2を使用するか、スクリプトをクローンしてログイン検証なしで動作させることができます。 PHPスクリプトの内部
へのアクセス
2.それが不要なTCPスタックのセットアップとティアダウンを避けるために、私はこの方法を好みます。しかし、PHP binディレクトリの場所を知る必要があります。あなたが必要とするコマンドは次のとおりです。
/usr/local/bin/php -f /home/(username)/public_html/(scriptname).php
あなただけ使用することができますいくつかのサーバ:
php -f /home/(username)/public_html/(scriptname).php
それは行うことができます。 –
どうすればいいですか? – user1254065