WordPress.org

Ready to get started?Download WordPress

Forums

WP 2.1.2: trackbacks not processed, cron not executed (3 posts)

  1. MartinEmmerich
    Member
    Posted 7 years ago #

    Hello,
    since a few version updates (I don't remember exactly, I'm using 2.1.2 now) outgoing trackbacks don't get processed anymore.
    I did some research and found that the cron field in wp_options table contains lots of (unprocessed?) do_pings() requests (field size is now ~12kB text).

    Ingo Putzlowitsch (who has the same problem) recommended me in the german support forum to call do_ping() manually. I wrote a php script

    <?php
      require_once( dirname(__FILE__) . '/wp-config.php');
      require_once( dirname(__FILE__) . '/wp-includes/functions.php');
      do_all_pings();
    ?>

    When calling that script do_pings.php via its URL I get after about 25 seconds
    `Server Error
    Premature end of script headers: do_pings.php
    Error 500'

    If it would run, it would at least help a little and cure the symptoms. Why the cron doesn't run I don't know.
    BTW: I have a testblog running on the same server where cron gets processed regularly and trackbacks get sent.
    Incoming trackbacks/pings work on both.

    What can I do, how can I test? I only have access to the access logs, not to the error or php logs.

  2. MartinEmmerich
    Member
    Posted 7 years ago #

  3. Samuel Wood (Otto)
    Tech Ninja
    Posted 7 years ago #

    You can manually run the cron process by just pointing a browser at http://yoursite.com/blog/wp-cron.php. That might give you an idea why cron's not running. One of the more unusual causes I've heard of for wp-cron not running, for example, is that the webserver was unable to resolve it's own address in DNS. So it couldn't access itself via a web request, which is what wordpress does to run wp-cron in a separate process.

    As for your script dying... "Premature end of script headers" just means that your script stopped before returning any output at all. Since it did take 25 seconds to do, it might have actually done something in that time.

    Also, note that your script has no output. Even in a success situation, you might get the same error (depending on your server configuration), because the script doesn't send anything back to the browser.

    The thing to do is to check is to see whether any of the pings actually got done during that 25 second time period. If so, then you can just keep running the script until they all get done.

Topic Closed

This topic has been closed to new replies.

About this Topic