All I need is a rewrite that will change example.com/anyphrase
into example.com
.
Here is what I am using:
RewriteCond %{HTTP_HOST} ^example.com
RewriteCond %{SCRIPT_FILENAME} !wp-admin
RewriteCond %{SCRIPT_FILENAME} !activity
RewriteCond %{SCRIPT_FILENAME} !members
RewriteCond %{SCRIPT_FILENAME} !groups
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php [L]
Notes:
I added the above to the top of my .htaccess
file (in WP root). I am running WordPress 3.1.3 multisite (subdomains), WP MU Domain Mapping plugin, and buddypress on example.com
. The mapped domain name is example.com
, not the actual subdomain.
I was assuming that my rewrite rule would load example.com/index.php
, which would load the homepage for the WordPress site. However, I get a “page not found” response shown in my buddypress skin (not a full-blown error 404 page).
not sure if this is a problem for you still or not, but if so I noticed a few issues. First off, your domain wasn’t set to be case-insensitive [NC]. Second, your RewriteRule regex has a character class ending with a dash. This needs to start with a dash. Third, your rule sends the request to index.php, which means index.php needs to know how to handle the request. If you want to redirect, that’s different. Give this a whirl and let me know how you make out:
Cheers~