update: fixed!
This bug has dragged on and on, and I bet the fix is one line in the rewrite rules. The problem in a nutshell is that the rewrite engine is not ignoring “real files” like it should be. When accessing the real file path http://blogs.example.com/wp-admin/admin.php?import=rss&b=myslug, the rewrite engine does not ignore it. More details in the ticket.
The problem only happens when using directory style URLs, and not with subdomains.
Here are the rewrite rules:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^profile/? wp-admin/profile.php?%{QUERY_STRING} [L]
RewriteRule ^login/? wp-login.php?%{QUERY_STRING} [L]
RewriteRule ^register/? wp-register.php?%{QUERY_STRING} [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9_-]+)/admin/?$ wp-admin/index.php?b=$1&
RewriteRule ^([^/]+)/admin/?([^/]+php)\??(.*) wp-admin/$2?b=$1&%{QUERY_STRING} [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^(.+)/admin(.*)
RewriteCond %{REQUEST_URI} !^(.+)/index.php(.*)
RewriteRule ^([A-Za-z0-9_-]*)/? /index.php?b=$1 [L,QSA]
help!
Share This (digg, reddit, de.licio.us, email, etc)