ですよねえ。
前に聞いた気がするので、検索したのですが、「自動実行ジョブ」で出てこなかったので、聞いてなかったかなと思ってました。
無事、自動実行時ジョブのところに出てきました。
そこで、実行ボタンを押すと、実行するのが確認できました。
そこで、cronに加えるauth付きのURLをコピペして、wget xxxxxを実行してみましたが、実行されていないようです。
だからcronに加えても実行されません。なにが足らないでしょうか。
自動実行ジョブの実行のさせ方
2014年7月9日 at 17:27
自作のパッケージ(/packagesに作った)のところに、jobs(/packages/tomoac_xxx/jobs)をつくり、そこに実行されたらエラーログにメッセージを出すジョブ(クラス)を作りました。
さて、これを実行させるにはどうすればいいでしょうか?
「管理画面」の「自動実行ジョブ」のところに出てくるのかと思いましたが出てきません。
タグ:
Re: 自動実行ジョブの実行のさせ方
2014年7月9日 at 17:46
URLにブラウザからアクセスして実行されればcronの問題、実行されなければjobの問題かと思います
Re: 自動実行ジョブの実行のさせ方
2014年7月9日 at 23:07
その後、いろいろ試してみました。
ブラウザや直接コマンドでの実行は「アクセス拒否」となります。おそらく、concrete5の中から実行しないとそうなるんだと思います。
それはそれとして、「自動実行ジョブ」、私が作ったお試しのコードと既存のsitemap.xmlを作るジョブとも共通なのですが「自動実行ジョブ」の画面で実行ボタンを押すと実行され、sitemap.xmlはできるのですが、cronに登録するとsitemap.xmlが作られません。
同じサーバーで動作しているサイトと何が違うのかをいろいろ考えてみたら、推察ですが、ドメイン直下にconcrete5が動作している場合はsitemap.xmlが作られるが、サブフォルダでconcret5が実行されている場合は、実行ボタンではsitemap.xmlが作られるが、cronでは作れないようです。
この辺、もう少し詳しく試したいのですが、どこのコードが実行されてるのか、わかりませんでしょうか。(こんな感じ)
http://xxxxx.tomo.ac/aaaaa/5.6.3.1_ja/concrete5.6.3.1.ja_devel/index.php/tools/required/jobs/run_single?auth=a64bb0ba88fb49a7a8a1953bfb1137a3&jID=6
toolsの下の、requiredはどこなんでしょうか?
ブラウザや直接コマンドでの実行は「アクセス拒否」となります。おそらく、concrete5の中から実行しないとそうなるんだと思います。
それはそれとして、「自動実行ジョブ」、私が作ったお試しのコードと既存のsitemap.xmlを作るジョブとも共通なのですが「自動実行ジョブ」の画面で実行ボタンを押すと実行され、sitemap.xmlはできるのですが、cronに登録するとsitemap.xmlが作られません。
同じサーバーで動作しているサイトと何が違うのかをいろいろ考えてみたら、推察ですが、ドメイン直下にconcrete5が動作している場合はsitemap.xmlが作られるが、サブフォルダでconcret5が実行されている場合は、実行ボタンではsitemap.xmlが作られるが、cronでは作れないようです。
この辺、もう少し詳しく試したいのですが、どこのコードが実行されてるのか、わかりませんでしょうか。(こんな感じ)
http://xxxxx.tomo.ac/aaaaa/5.6.3.1_ja/concrete5.6.3.1.ja_devel/index.php/tools/required/jobs/run_single?auth=a64bb0ba88fb49a7a8a1953bfb1137a3&jID=6
toolsの下の、requiredはどこなんでしょうか?
Re: 自動実行ジョブの実行のさせ方
2014年7月11日 at 8:06
Re: Re: 自動実行ジョブの実行のさせ方
2014年7月11日 at 8:54
ありがとうございました。
concrete/tools/jobs/run_single.php で症状がより詳しく確認しでき、「アクセス拒否」のメッセージがなぜでるかがわかりました。
wget "http:// .... run_single?auth=a64bb0ba88fb49a7a8a1953bfb1137a3&jID=10"
cron内で、""(ダブルクオーテーション)を付けてなかったので、authのみ有効で、&job=10が無効になってしまってました。
これによって、「実行ボタン」を押したらうまく実行されるのに、cronに登録するとうまく実行されない原因がわかりました。
concrete/tools/jobs/run_single.php で症状がより詳しく確認しでき、「アクセス拒否」のメッセージがなぜでるかがわかりました。
wget "http:// .... run_single?auth=a64bb0ba88fb49a7a8a1953bfb1137a3&jID=10"
cron内で、""(ダブルクオーテーション)を付けてなかったので、authのみ有効で、&job=10が無効になってしまってました。
これによって、「実行ボタン」を押したらうまく実行されるのに、cronに登録するとうまく実行されない原因がわかりました。
Your post has been saved and will be published after approval by the forum moderator.
takuro hishikawa
Re: 自動実行ジョブの実行のさせ方
http://concrete5-japan.org/community/forums/development/post-7382/