Viewing 8 replies - 1 through 8 (of 8 total)
  • It is most likely a server issue – but you could check if autoupdate of core or plugins has broken something. Use FTP to check if any files has been changed recently.

    Thread Starter MiguelGM

    (@miguelgm)

    Thanks for your answer Frans,

    I update stuff manually, so I agree with you that it will be some server issue, but will definitely check that.

    Thread Starter MiguelGM

    (@miguelgm)

    Update: I activated wp’s debug mode, and I’m finding a lot of these errors:

    PHP Notice: Undefined property: stdClass::$blog_id in /home2/miguel/public_html/wp-includes/functions.php on line 3841

    It might be related to the problem, since it seems it’s not correctly mapping proper blogs to their matching filesystem dir, which depends on blog id.

    I have looked around for this error, and following some threads I tried deactivating all plugins except w3 total cache, but it didn’t do anything.

    I have the same problem and just found the solution. It is indeed a redirect problem. Add the following line to your .htaccess.

    # uploaded files
    RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]

    Thread Starter MiguelGM

    (@miguelgm)

    Thanks for your reply Edna, unfortunately your exact code didn’t work for me, but I have started researching into the redirect issue.

    I made a *local* copy on my machine, and changed the wp_N_options fields of ‘home’, ‘siteurl’ and ‘fileupload_url’ for one of my blogs to point to the local installation, and the problem persisted.

    However, by using a .htaccess redirect from here (https://codex.www.ads-software.com/Multisite_Network_Administration) it worked. The redirect I used was the “WordPress 3.0 through 3.4.2” one, in the .htaccess of my *local* installation.

    And nicely enough, lo and behold, the files started showing up.

    However, when copying the code to the hostgator .htaccess, it does nothing :-/

    Here’s the code for reference:

    # BEGIN WordPress
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    
    # uploaded files
    RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
    
    # add a trailing slash to /wp-admin
    RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
    
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^ - [L]
    RewriteRule  ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
    RewriteRule  ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
    RewriteRule . index.php [L]
    # END WordPress
    Thread Starter MiguelGM

    (@miguelgm)

    Solved it. I will son edit this very post with the solution. Thanks.

    Hi Miguel, I have the same problem, updated to 4.3 and now the media library not showing, what was your solution? thanks

    Thread Starter MiguelGM

    (@miguelgm)

    Hi there dudutz,

    Unfortunately I have to say that my case ended up being a hack.

    The hacking was rewriting systematically the .htaccess file.

    I found out this case study that describes what was happening to me:

    https://oziti.com.au/case-study/wp-security-removing-wordpress-backdoor

    I hope yours is not a system compromise, and if it is, I hope you can clear it up.

Viewing 8 replies - 1 through 8 (of 8 total)
  • The topic ‘Media not being redirected (shows 404, but files are OK)’ is closed to new replies.