Why are all my uploaded files erroring with 404?

Solution:

If I understand your question correctly, the files are all being successfully uploaded, but accessing the files through a browser is the problem. It sounds like you’re running into an issue with the URL rewrites that WordPress uses. The rewrites start at the root level of your installation, and carry over to sub-directories unless told otherwise.

In the root of your WordPress installation, take a look at your .htaccess, and add a line that tells it to ignore the subdirectory when doing rewrites (in this case, ‘/uploads’)

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/?uploads/
RewriteRule . /index.php [L]
</IfModule>
# END WordPress