WordPress.org

Ready to get started?Download WordPress

Forums

RSS Feeds from same parent domain not loading (7 posts)

  1. ccsit
    Member
    Posted 9 months ago #

    * I have a main WordPress homepage
    * A separate multisite install for sub blogs
    * A separate site that has a combined RSS feed taken from the sub blogs
    * All sites use the same main domain, but run under separate sub domains, e.g.

    http://www.domain.com
    blogs.domain.com
    rss.domain.com

    * For both of the WordPress sites I use a adapted version of the twentyten theme

    On the latest posts page I display two RSS feeds next to the main content, these are pulled from two of the sub-blogs via the built-in RSS Widget.

    Since both have been upgrade to 3.5.2 the RSS Widget will no longer show feeds from the sub blogs, I get this error:

    "RSS Error: WP HTTP Error: A valid URL was not provided."

    The feeds validate on the w3c test page

    I also have a newsticker plugin that pulls content from the rss.domain.com address, and this also does not show anything now.

    Since 3.5.2 contains a lot of fixes for cross site scripting, I am wondering if any of these fixes would stop the pulling of RSS content from sites that use the same parent domain?

    Both the widget and the plugin can load third party RSS feeds.

    Has anyone else experienced this? Is there a fix?

  2. peckjon
    Member
    Posted 9 months ago #

    I've been unable to find a graceful fix. For now, I'm using the workaround of copying the RSS feed into a local directory every minute (via cron), and pointing my Widgets at that local feed file.

    Specifically, this is my cron file:

    * * * * * wget http://someOtherServer.com/rss/news.xml -O /home/www/html/news.xml

  3. peckjon
    Member
    Posted 9 months ago #

    This may get fixed in WP 3.6

    Until then, there is an UGLY and POTENTIALLY UNSAFE change you can make to allow your server to access remote RSS feeds:

    edit [moderated - do not edit core WordPress files]

    on line 72, find the following:
    'reject_unsafe_urls' => true,

    change it to:
    'reject_unsafe_urls' => false,

  4. ccsit
    Member
    Posted 9 months ago #

  5. peckjon
    Member
    Posted 7 months ago #

    This is still not properly fixed in 3.6 -- this latest release solves the problem for multisite blogs accessing another sub-site, but not separate WP installations, or RSS feeds from other hosts on the LAN whose external IP differs from the internal IP.

    MODERATOR: do not edit until there is a viable fix. We who modify core WP files know that this is a potentially unsafe and unstable solution, but until there is a viable workaround, this is the only means by which we may include certain feeds.

    There is an UGLY and POTENTIALLY UNSAFE change you can make to allow your server to access remote RSS feeds

    In WP 3.5:
    (1) edit wp-includes / functions.php
    (2) find 'reject_unsafe_urls' => true,
    (3) change it to 'reject_unsafe_urls' => false,

    In WP 3.6:
    (1) edit wp-includes / http.php
    (2) find function wp_safe_remote_request
    (3) remove (or comment out) the line $args['reject_unsafe_urls'] = true;

    BE AWARE that this will make your site VULNERABLE: if any of the sites you draw dynamic data from get spoofed, you could end up including rogue content in your site. Be EXTREMELY careful which URLs you use to include dynamic content.

  6. peckjon
    Member
    Posted 7 months ago #

    That said, a more stable approach would be to simply copy the RSS file to a local cache, then use the local version. For example, I would add the following cron job:

    * * * * * wget http://somehost.com/news.xml -O /home/www/news.xml

    ...then simply access http://localhost/news.xml as my RSS feed

  7. dpto
    Member
    Posted 6 months ago #

    Try add this in your functions.php file:

    function http_request_local( $args ) {
       $args['reject_unsafe_urls'] = false;
       return $args;
    }
    add_filter( 'http_request_args', 'http_request_local' );

Reply

You must log in to post.

About this Topic

Tags