I’m stoked be co-hosting the WordPress-orientated DradCast later today, Wed April 10, with regular hosts Dre Armeda and Brad Williams. Tune in at 8pm EST/5pm PST for the live broadcast – should be fun!

WP Engine sub-domains addressable on client installs

There’s been some discussion on Twitter in the last few hours about WP Engine client site sub-domain urls, such as foo.wpengine.com, potentially appearing in search results instead of the client’s primary domain. This has stemmed from a tweet by SEO expert Joost de Valk (aka ‘Yoast’) who wonders whether this is an SEO mistake or oversight on our part:

(for those that don’t know, when a WP Engine client creates a new install we assign it a sub-domain as a convenience so that the site will be addressable during development and/or before the primary domain is pointed to the site. It persists after the primary domain has been added for support purposes in case there is ever a DNS issue with the permanent domain.

What has happened here is simply that the WP Engine sub-domain has been shared or linked to instead of the primary (canonical) domain. This is no different to when a page is (accidentally) referenced via a site’s IP rather than it’s domain – eg http://123.123.123.123/mypage.html instead of http://mydomain.com/mypage.html.

It’s worth noting btw, especially for Yoast, that the canonical url for this page is set correctly:

<link rel="canonical" href="http://www.mvestormedia.com/wordpress-local-seo-yoast-part-1-single/"/>

I’m not sure how the site in Yoast’s tweet became referenced by the WP Engine sub-domain, but once the primary domain is updated in WordPress, obviously all links will use the primary domain – this is WordPress standard behavior. There’s clearly nothing WP Engine is doing here that is untoward or intentionally trying to damage anyone’s SEO.

AND if the client is particularly concerned about this they have full access to their .htaccess file and can redirect any traffic to the WP Engine sub-domain to their primary domain.

This is easily done with two lines of code.

UPDATE: Or, as Topher points out, you can do this automatically within our User Portal.

We don’t do this by default because it would then prevent us accessing the site via the sub-domain during a support call/etc, should the DNS on the primary domain fail.

Three things to highlight

1) We’re not doing anything here to damage anyone’s SEO.

2) This has nothing to do with our staging site feature, which was mentioned by some follow up tweets.

3) I’m disappointed in the way this comment was made by an SEO expert in the WordPress Community. Yoast has our email addresses and so if he wanted to ask a question, be constructive or even make a formal suggestion he could just have easily opened an email and created a dialogue with us about this. Folks do that all the time, we go out of our way to do this with others, and overall it leads to great things and improved products for everyone.

Instead, the way this has been written and communicated feels like a snipe, a quite unnecessary snip too, especially by someone heavily affiliated with another offering in the space. This isn’t how we do things in the WordPress Community.

Would Yoast have tweeted:

“ExampleHost is making an SEO mistake because http://foo.com/page can be accessed via http://123.123.123.123/page”

(which is the case for all web hosts that don’t use VirtualHosts), or

“Amazon is making an SEO mistake because http://foo.com/page can be accessed via http://ec2-12-34-56-789.compute-1.amazonaws.com/page

(which is the case for all sites that use Amazon EC2)?

As an SEO expert, Yoast knows this is a common issue and not something WP Engine is specifically doing or an SEO fault on our part.