FTP vs. Custom Domains

Bloggers who rely on our FTP service to publish their blog to their own domain had a rough week last week. In fact, it's been a bumpy month or two. Let's start with the most important comment on this state of affairs: this sucks, and we're sorry.

(Note: this is a lengthy post, and goes into a fair amount of technical detail. If you don't use FTP to upload your blog, you can skip this post. --Rick Klau, Blogger Product Manager)

If you use FTP today, I'd like to start a conversation about whether this is the right approach for your blog. I've been talking with bloggers over the last couple weeks on this subject, and have found most users, when presented with the option of hosting their blog using Blogger's Custom Domain option instead of FTP, find Custom Domains to be a far superior option. That's not to say there aren't compelling reasons to stick with FTP, so I'm not interested at this point in trying to convince everyone to switch over to Custom Domains. But I do think it is preferable for most of you still using FTP, and hopefully this post will help lay out why.

Advantages of Custom Domains Over FTP

First off, what is a Custom Domain? If you own a domain, we can host your blog at your domain instead of hosting at yourblog.blogspot.com. Unlike FTP, where you transfer the blog's files to a webserver hosted elsewhere, Google actually hosts the blog on our servers. So why would you want to start using a Custom Domain over FTP? When Blogger released Custom Domains a couple years ago, we pointed out a couple obvious advantages:
1) Simple setup.
2) Faster publishing. You no longer wait for files to transfer to your remote host; as soon as you click publish, the post is available and all archive pages are updated.
3) Drag and drop template editing. Blogger's newer templates offer you a lot more in terms of customization, and make designing your page a much simpler process.
4) Access control. You can restrict access to your blog when we host it; there's no way to do this natively within Blogger (though your webhost may offer a way to do this separately).
In light of the recent experiences with FTP, here's two more:
5) Fewer moving parts. As I've dug in over the last few weeks on issues relating to FTP, as often as not the problems were not Blogger-related but were a byproduct of a webhost implementing stricter security on FTP logins (only whitelisting certain IP addresses, for instance, or throttling access for certain users). These are notoriously hard to isolate, particularly when they involve coordinating support with a third party. No one - including us! - enjoys the terrible back and forth of "it's the webhost's issue" "no, it's Blogger's issue" "no, we're pretty sure it's the webhost's issue" when all you want is to be able to post to your blog.
6) Free, scalable hosting. Google knows a thing or two about hosting content around the world, and by relying on Blogger for hosting you're getting the advantage of a robust hosting environment - for free!
Twitter Feedback: Why do you prefer FTP?

Enough generalizations. On Saturday, I asked users on Twitter to tell me why they preferred FTP over Custom Domains. I've listed the first few responses below, along with my thoughts:
  • @creuzerm: "I can easily back up my site via my backup scripts over FTP." (@cjewel and @Vin07 made similar points.)

    • Blogger users have a one-click backup option from the Blogger dashboard (Click Settings | Basic, then click "Export blog"). Unlike file backups from a remote webhost, Blogger's export (details here) does a full export of all posts, comments, the current layout, and your Blogger settings. At any time, you could recreate the entire blog with a single upload, and restoring the blog on a Custom Domain would take seconds (unlike FTP, which could take hours for larger blogs to transfer all of the necessary files). If you ever wanted to migrate off of Blogger, our conversion utilities will help you convert from Blogger's export file to most other popular blog formats. (Come to think of it, if you haven't backed up your blog lately, why don't you do that right now?)

  • @lizcastro: "FTP lets you get rid of the NavBar and better control of your branding."

    • There is no difference between control/branding between Custom Domains and FTP. In fact, you get more control over the look and feel of your template, with a more sophisticated, point-and-click interface to adding interactive gadgets - all of which are draggable in the template editor to get the exact placement and layout you want. If you choose to remove the navbar, there are several sites that walk you through the few steps necessary to remove it. We'd prefer you didn't - it helps users find your site, it makes it easier for users to search your blog, and we have several enhancements planned for the navbar this summer. But if you insist on removing it, a search for "remove Blogger navbar" will point you in the right direction. (Obviously, this is not supported and we can't provide support for any modifications you make to your templates.)

  • @eccentriclee: "I feel better having access to all files directly." @lizcastro: "FTP allows you more control over uploading things to your own server (or seems to) and uploading images with Blogger is cumbersome."

    • As detailed below, I have what I think is the best of both worlds: Blogger manages the hosting of my site (at a subdomain, tins.rklau.com), and I retain access to my webhost for file uploading (at www.rklau.com). Regarding image uploading, when you switch away from FTP, you get our integration with PicasaWeb, where you can host images. This tends to be a much more powerful way of managing uploaded images (all uploaded images are stored in a Picasa album for future reference).

  • @nomadness: "FTP lets me keep /blog inside long-established site hierarchy with other content at root."

    • This is a valid concern if the custom domain you choose is the same as the domain you currently use for FTP (i.e., you FTP to www.yourdomain.com/blog and want to use www.yourdomain.com for your Custom Domain). In my case, I chose to leave www.rklau.com alone and instead have Blogger manage a subdomain as my Custom Domain. That's not the whole answer, however - there's still the matter of getting people from www.yourdomain.com/blog to blog.yourdomain.com. See "Redirecting..." below.

  • @Vin07: "Afraid of posts being lost on switch..."

    • I'd suggest a backup to eliminate any risk. But rest assured, no posts are lost in the switch.

There were two responses that are completely valid reasons for sticking with FTP:
  • @haitai: "In China, the ghs.google.com always blocked by #GFW, FTP web host isn't." @johnroach: "Blogger sometimes gets blocked by Turkey and so does some internet sites."

    • Yep, if a country blocks access to Google domains, and you or your audience is primarily in that country, then you'll want to host on a domain that's not blocked.

  • @creuzerm: "I am planning on doing a PHP blog template."

    • If you absolutely need to execute PHP within your template's pages, you'll have to host on a domain where PHP is installed and supported. Of course, there are a ton of gadgets that can add functionality to your site, so you may be able to do what you need without adding custom code. (On the "Layout" tab for a Blogspot or Custom Domain-enabled blog, click "Add a Gadget".)

One note: if you do stick with FTP, we'd strongly recommend checking with your webhost to see if they support SFTP - it's much more secure than FTP.

Redirecting from your FTP blog to your Custom Domain blog

OK. Let's assume that you've read this far, and have decided that you want to give a custom domain a try. If your blog has been around a while, you'll be concerned about links to your soon-to-be old URL.

I started my blog on Blogger in 2001, using Blogger's FTP service to publish to www.rklau.com/tins/. At the time, that was the only way to use Blogger to manage my blog on my own domain. I later switched to Movable Type (retaining the same URL), and then migrated to WordPress in 2005. Back in November, in anticipation of joining the Blogger team, I moved back to Blogger. After chatting with the Blogger team, I knew I wanted to take advantage of many of the new features on Blogger - but because I had a ton of images and files on www.rklau.com that I'd uploaded over the years, I didn't want to map www.rklau.com to Blogger.

My answer? I moved the blog from www.rklau.com/tins/ to tins.rklau.com. I created a CNAME for tins.rklau.com that maps to Google, and now Blogger hosts the blog. All of the old posts with pointers to files and images at www.rklau.com continue to work. I documented how I use WordPress to redirect requests from the old posts to the new ones here. If you're moving from FTP to Custom Domains, then there's one last step - redirection - to ensure that requests to the former URLs find your new URL.

How you implement the redirection depends on what kind of server you're hosting on. If you're on an Apache webserver (most common) then you'll want to use something called htaccess. If you're on an IIS server and you don't manage the server yourself, you will need to talk to the webhost to get the redirect in place.

To create an htaccess file, first create a text file which includes the following lines:

RewriteEngine On

RewriteBase /

RedirectMatch 301 ^/blog/(.*)$ http://blog.yourdomain.com/$1

This assumes your blog is published to /blog, and that your new Custom Domain is blog.yourdomain.com - change those values as appropriate. Now upload this file to your webserver, and name it ".htaccess" (no quotes, but the period preceeding "htaccess" is important) in the root directory. All this does is take incoming requests to files in the /blog directory, and redirect them to blog.yourdomain.com, while keeping the rest of the URL intact. Since Blogger will keep the same permalinks in the migration, this will preserve all inbound link traffic.

To all of you who continue to rely on Blogger as your blogging platform: thank you.