php - Magento - cron job script is running, but Magento order confirmation emails are not sending -
as magento documentation states, need set cron job on web server in order things order confirmation emails send out, so:
* * * * * /bin/sh /absolute/path/to/magento/cron.sh
this simple cron job. issue is, automated tasks not completing in magento. it's if script isn't being run cron job. , result, order confirmation emails not sending (among other magento automated tasks).
i've installed aoe scheduler extension double-check every automated task in magento , see when tasks completing (or, in case, when they're not). none of tasks including core_email_queue_send_all
completing on 1-minute-interval basis.
now here's weird part. if go run cron.php
script (cron.sh
triggers cron.php
) loading in web browser @ mydomain.com/cron.php
, magento automated tasks execute! , since script works when run manually, , know cron jobs working...i can't figure out!
please help!
additional details
here's how know cron jobs working—i have tested cron jobs on server creating php script sends basic email mail()
, , ran similar cron job 1 above execute every minute—the cron job functions normally. getting mailto
emails server every time cron job runs. no errors can see.
i can execute exact command in cron job...
/bin/sh /absolute/path/to/magento/cron.sh
...in terminal when ssh in, , runs script , magento runs automated tasks. doesn't run every minute in cron job!
this totally weird , can't figure out.... @ end of day, work did on magento store moot if customer's can't check out , confirmation emails.
any advice extremely appreciated.
update
i able using wget
command call cron.php
, still doesn't feel permanent solution.
wget -o /dev/null -q http://domain.com/cron.php
while it's technically working now, magento's documentation recommends running cron.sh
, not cron.php
. still love concrete answer why cron job won't run cron.sh
sh
.
some steps trying:
in terminal:
check cron log:
tail -f /var/log/cron
can see commands being run?
check if cronjobs present:
crontab -l
check if cron user has executable permissions file, if not:
chmod +x file.sh
is cron running? check see if process running:
pgrep crond
Comments
Post a Comment