openshiftでアプリケーションを作成しました。cron内のminutelyフォルダーに配置されているため、毎分実行する必要があるcronがあります。しかし、それは決して実行されません。curlを使用してURLをヒットするphpスクリプト。何か案が
<?php
// create a new cURL resource
$ch = curl_init();
// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, "http://www.example.com");
curl_setopt($ch, CURLOPT_HEADER, 0);
// grab URL and pass it to the browser
curl_exec($ch);
// close cURL resource, and free up system resources
curl_close($ch);
?>
このスクリプトを作成し、.openshift / cronsフォルダーのminutelyフォルダー内に配置しました。次に、アプリケーションを再起動しました。しかし、それは機能しません。何か案が?
2つのファイルが必要になります。
1。:cronファイル
これは、PHPスクリプトを実行するスクリプトです。あなたはそれをminutelyフォルダーに置く必要があります。「crontest.sh」という名前を付けましょう。フルパスは次のようになります。ここで、000000000000000000000000は独自のOPENSHIFT_APP_UUIDです。
/ var / lib / openshift / 000000000000000000000000 /app-root/runtime/repo/.openshift/cron/minutely/crontest.sh
ファイルには次の行のみが含まれています。
php $OPENSHIFT_REPO_DIR/php/crontest.php
2。:PHPファイル
これはPHPスクリプトであり、Cronスクリプトによって毎分実行されます。Cronファイルで指定したのと同じフォルダーに配置する必要があります。「crontest.php」という名前を付けましょう。フルパスは次のようになります。ここで、000000000000000000000000は独自のOPENSHIFT_APP_UUIDです。
/ var / lib / openshift / 000000000000000000000000 /app-root/runtime/repo/php/crontest.php
このファイルにはPHPスクリプトが含まれています。たとえば、これにより、PHPスクリプトの横に「crontest.txt」という名前のファイルが表示され、渡された分数と同じ数の「1」が含まれます。
<?php
file_put_contents(getenv('OPENSHIFT_REPO_DIR').'php/crontest.txt', '1', FILE_APPEND);
?>
SanksRの特定の質問に答えるために、PHPファイルの「app-root / runtime / repo / php / crontest.php」ファイルには以下のコードが含まれ、「app-root / runtime / repo / .openshift / cron / minutely」には以下のコードが含まれます。 /crontest.sh "には、" php $ OPENSHIFT_REPO_DIR / php /crontest.php "が含まれます。
<?php
// create a new cURL resource
$ch = curl_init();
// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, "http://www.example.com");
curl_setopt($ch, CURLOPT_HEADER, 0);
// grab URL and pass it to the browser
curl_exec($ch);
// close cURL resource, and free up system resources
curl_close($ch);
?>
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加