We have a client that runs 15 or so e-commerce and brochureware sites for his customers. What they want to do is add a WordPress blog to each of these sites, for example:
www.site1.com/blog www.site2.com/blog www.site3.com/blog www.site4.com/blog
All of these sites reside on the same server (Windows 2008R2/IIS7.5 running PHP 5.3).
Rather than have a separate install of WordPress in each /blog
directory we'd like to map /blog
as a virtual directory to a single install of WordPress located in a central admin site, i.e. www.clientsdomainname.com
.
The idea being to enable the multi-site feature on WordPress and manage all these site's content on one place on clientsdomainname.com
.
To try and get this working with the first blog site (www.site1.com/blog
) I've
Installed WordPress 3.6.1 on
www.clientsdomainname.com
Enabled the multi-site feature
Mapped
site1.com
's/blog
as a virtual directory pointing to the physical root ofwww.clientsdomainname.com
on the file system (making sure permissions are correct etc).Installed http://wordpress.org/plugins/wordpress-mu-domain-mapping/ and carried out the following:
Set my server IP address in the domain mapping configuration as per step 3 in http://ottopress.com/2010/wordpress-3-0-multisite-domain-mapping-tutorial/
Created a new site (
www.clientsdomainname.com/site1
) using the Network Admin bitsDropped into this site's dashboard and in Tools -> Domain mapping added:
http://www.site1.com
and set this as the primary domain for this site.
Now when I browse to http://www.site1.com/blog
things aren't quite right - CSS isn't being loaded and I get WordPress's default "This is somewhat embarrassing, isn’t it?" 404 page.
If I view the page source, site URL's (such as for CSS) are being requested from http://www.site1.com/
rather than http://www.site1.com/blog
I'm now stuck and not sure how best to proceed with getting this to work.
Is it possible to get my desired configuration work using the multi-site feature along with one of the domain mapping plugins e.g. https://premium.wpmudev.org/project/domain-mapping/ or http://wordpress.org/plugins/wordpress-mu-domain-mapping/ ?
The following are the changes I made to the default wp-config.php
file, everything else is stock:
/* That's all, stop editing! Happy blogging. */
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'clientsdomainname.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
define('SUNRISE', 'on');
These are the rewrite rules for the clientsdomainname.com
where WordPress is installed (we use ISAPI_Rewrite3 which supports most Apache mod_rewrite directives):
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [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).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
blogadmin
subdomain is coming from... Looks like this is not a MS with subdomains, but with directories, is that correct? Post your wp-config and htaccess settings.blog
is reserved in MS, see wordpress.stackexchange.com/q/59775/blog
is just the name of the virtual directory in each website, it's not used as a multi-site site name. Those are named/site1
,/site2
etc.