Blogger Unofficial FAQ blog

The blog formerly known as Blogger archive/template troubles, featuring
fixes for problems with Blogger's archives, templates, and more

FTP - Setup basics

Blogger needs three things from you to FTP (well, five if you count username & password, seven if you count archives, but let's not, just yet...).

FTP Server

First is the FTP Server. That tells Blogger what other computer to connect to, nothing more. What that server will be depends on your host. For some hosts it is the usual name with www replaced by ftp: the FTP server for www.geocities.com is ftp.geocities.com. Sometimes it is exactly the same as the usual address. And sometimes, if you have a "virtual domain" hosted through a hosting company's address, it will be something completely different: the FTP server for www.ringnalda.com could be ftp.bigolhosting.com. Your host should have told you what FTP server to use when you signed up. If not, look on their home page for a FAQ, or technical support. As a last resort, call or email them, and ask. Enter the FTP Server as just the name, don't start it with ftp:// and don't include a username and password (phil@ftp.ringnalda.com is just a way of passing the username in the URL).

FTP Path

Once you have entered your FTP Server, you need an FTP Path. This tells Blogger where to put your blog file, relative to the directory that your FTP server puts you in when you first connect. Some hosts will automatically put you in the correct directory, and some will not. Also, if you don't want your blog in the main directory for your account, you'll have to tell Blogger that. The easiest way to determine what your path should be is to log in to your FTP server with an FTP client, like CuteFTP or WS_FTP. Set up a new connection, and only tell the program the host name and your username and password (after all, that's all Blogger will know until you figure out the path). Connect to the FTP server, and take a look at where you end up. That part of the path is what you don't need to tell Blogger. Now, what do you need to tell Blogger? If you are in an empty directory, then Blogger probably doesn't need any FTP Path at all. If you are in a directory that already has your web page(s) in it, then Blogger certainly doesn't need an FTP Path. However, if you see a subdirectory with a name like www or web or public_html, then that will be the start of your FTP Path, if not all of it. Some examples: if your web site is at www.ringnalda.com and you want your blog at www.ringnalda.com/blogger.html, and when you log in to your FTP host you see a directory named www, then your FTP Path is www/ - nothing more, nothing less. If your site is at www.geocities.com/ringnalda/ and you want your blog to be at www.geocities.com/ringnalda/writings/blog/blogger.html, and when you log in you see that you are already in the ringnalda/ directory, then your FTP Path is writings/blog/ and you need to be sure that both those directories exist before you have Blogger try to send files there. The FTP Path is just what you would tell someone to do after they connected to your host, written so that Blogger can understand: "go to the www directory, then to the blog directory" is www/blog/ in Blogger terms.

Blog Filename

The final thing that Blogger needs is the Blog Filename. Blogger thinks it should be blogger.html, which is fine if you are going to put your blog in a directory with some other files, including your main web page that is named index.html (or one of the other default page names). If your blog will be your main web page, or will be in a directory by itself, change blogger.html to index.html so that you can tell people to find your blog at www.ringnalda.com/blog/ rather than www.ringnalda.com/blog/blogger.html. Whatever filename you use, be sure it's the same in Blog Filename and at the end of Blog URL, which is the address Blogger uses when you click "view web page" to see whether your blog made it to its new home.

Username and Password

You have the choice of putting your username and password in your settings, so that you'll never be bothered about them again, or, you can type them in every time you publish (or maybe it's only once a session (it was annoying, so I started always putting mine in the settings)). Some people are worried about having their username and password stored on Blogger's server. If it bothers you, go ahead and type it in each time. Just don't think about how sending it from your computer, to Blogger's server, and then on to your host, lets twice as many people have the chance to intercept it. If horrible things would happen if your username and password were compromised, you should not be using Blogger. Send your blog to a free host, or a paid host dedicated to just your blog, and link to it from your site full of secrets.

FTP Archive Path and Filename

Of course, all that is only enough until you turn on archiving. Then you need an FTP Archive Path and an FTP Archive Filename. If you don't mind having your archives in the same directory as your main page, then the FTP Archive Path is exactly the same as your FTP Path: nothing if you don't need one, www/ or whatever it may be if you do. If you want your archives in a different directory, then your FTP Archive Path is just your FTP Path plus that directory: www/archives/ would be a reasonable choice. Be sure that the directory exists before you try to publish your archives. Blogger won't create it for you. The FTP Archive Filename can be anything you like (as long as it's a legal filename for your host - lots of free hosts are picky about the filenames they accept). I like archive.html - the archives/archive.html is just confusing enough to keep you on your toes.

When things don't work

If you figured out all the things to tell Blogger about your host, and everything was right, when you Post & Publish, you'll be told "Your publish request was sent at" the date and time, with a link for "more info". Click the "more info" and you hope to see "Transfer successful. View page to verify (give it a few seconds). [FTP Log]" - click "View page" to open your blog in a new window. If your post showed up, congratulations! You're done. If not, go back and click the "FTP Log" link, to see if that will tell you what went wrong. Since Blogger thinks the transfer was successful, you either put the file in the wrong place, or your Blog URL is not the same as the place you told Blogger to put your blog.

If you didn't get "Transfer successful" then you should get either an error message from Blogger (Error 210, etc.) or a "Transfer Error". If it is anything but "Transfer Error", write down the exact error message. Really. Write down the whole thing. Sometimes the error message doesn't tell you anything, but when you post in the Blogger Discuss forum that you got "a 5 something error I think" you'll have a long wait for a response! If you got a "Transfer Error", click the "view FTP log" link, and look for the part where your FTP host became surly. The most likely error is "553: no such file or directory" which either means that you didn't create the directory you told Blogger to put the file in, or you are trying to put the file in a directory where you aren't allowed to put it. If you can't make sense of the FTP log, copy the entire thing, and paste it into a message in the Blogger Discuss Getting Started forum, along with your Blog URL, FTP Server, FTP Path, and Blog Filename. If you are concerned about security, delete the "USER username" line in the FTP log before you post your message.



General - Moving out of Blog*Spot

Why leave Blog*Spot behind? Here are two reasons: at Blog*Spot, when Blogger is down, your blog will not be updated. At another host, you can always make updates by hand, FTP them yourself, and then let Blogger overwrite them when it comes back up. The second big reason is to have a place for other files. The biggest demand is for images (hosts like GeoCities and Tripod won't send your images over to a page on Blog*Spot, but they are happy to let you include them if your blog is hosted at their site), or you might also want an external stylesheet, or external Javascripts, or just to more closely integrate your blog with a non-blog web site. So, if you are moving out, here's a few things to make the move go smoothly:

Fix up your template and archives

First, be sure your archives are working perfectly at Blog*Spot. Click the Archive button on the "edit your blog" toolbar, and be sure that Blogger lists archives for all the weeks or months that you've been blogging. Then go to your Blog*Spot site, and click every single archive link to be sure that Blogger has published them. If some of your archives are missing, fix em!

You will want to put a <base href="<$BlogURL$>"> in the head section of your main template, and in your archive template's <head> also if you use the separate archive index page style. See making relative links work for more explanation.

If your blog's new home isn't in the root directory (i.e. www.geocities.com/username rather than username.tripod.com) then you'll need to change your "Home" link in your main template, and in your archive template if it isn't the included links style. The easiest way is to change the link to <a href="<$BlogURL$>">Home</a>. Then it will always be right, no matter where you move your blog.

If you are using permalinks, check your template to see what's in between <$BlogItemArchiveFileName$> and <$BlogItemNumber$> - the %23 that works at Blog*Spot may not work at your new host. Change it to a # just in case.

Next, pick your new host

The most important thing is to make sure they offer FTP uploads, so Blogger can move your files to their new home. The slowest thing to change about a free host is the list of features you see when you are signing up, so if a host looks good, sign up, but be sure to connect with an FTP program and send a test file to make sure they really do allow FTP uploads, before you start trying to move your blog.

Next, if you are using one of the templates that puts the archive links on the main page, instead of on a separate archive index page, be sure that your new host will cooperate with that style of archives. They have to be willing to serve up an ad-free, popup-free page when the page doesn't have <body></body> tags (here's a hint: GeoCities isn't). If they only offer popup ads, you'll have to use another host, or the separate archive index page style. If they offer banner ads, try this: create a text file, with no HTML code at all, but name it test.html and FTP it to your possible new host. Open your browser and type in the address for the test file (e.g. philor.tripod.com/test.html. If it appears ad free, then you can continue to use the javascript links on the main page style.

Finally, you need to figure out your FTP path. The first step is to connect to your new host with an FTP program. When you are connected, if you are already in the directory where you can put files that will appear in your web site, good! You won't need an FTP path. If you need to change to a directory like www or web, make a note of the exact name of the directory, because you'll need it when you change your settings. If you don't want your blog in your main directory, create the directory where it will live, and create the directory for your archives in that directory. If your blog will be in your main directory, create the directory for your archives there. Again, make a note of the exact directory names.

Now, the move itself

So far, you haven't done any real moving: your blog is still at Blog*Spot, and still in working order. That's about to change. First, you need to get your Blog*Spot version of your blog ready to be left behind. If you don't already have a counter on your page, consider adding one, so that you will know when you are no longer getting hits at your Blog*Spot address. Then, on the Settings page, under Formatting, change the "Show __ days' posts/latest posts on main page" to 1 latest posts, so that your main page will have just one post, saying that you have moved. Save changes, and make your final post, including a link to your blog's new home. If you want, you can include a JavaScript redirect in your template, but surely your readers are willing to click a link to find you, aren't they? Post & publish, and make sure that your post showed up. Once you have the single "I'm moving" post on Blog*Spot, change the number of posts/days back to what it was before.

Now for the move. You don't want to give up your Blog*Spot url until you are sure you have things working in a new spot, and you aren't still getting traffic at the Blog*Spot url. Here's how to hang on to your old address until you are sure you don't need it. Open two browser windows. In the first one, log in to edit your blog, and go to the Settings page. In the second one, go to the www.blogger.com home page, and click "create a new blog", type something like "Former" or "Old" and your blog title for the title (so you can tell it from the new home of your old blog) and anything you like for the description, select "host it at BlogSpot", and enter the address for your current blog at Blog*Spot. Click the "I agree..." box, but don't click "next" yet. Leave Blogger waiting patiently while you go back to the first window, and change the "Publish" dropdown menu to "via FTP...". Still no hurry, you haven't really moved until you click "save changes". Enter your new blog URL (including the filename, e.g. http://philor.tripod.com/testblog/index.html) and your FTP server. Enter the FTP path if you have to change directories after you log in with an FTP program (or if you want it in a different directory) without a slash at the front, and with one at the end (e.g. testblog/). Your Blog Filename should be the same name you used in Blog URL, including an extension (.html or .htm). You can either enter your FTP username and password here, or type them in a dialog box every time you publish.

Scroll down to the Archiving section, and enter the archive path you created. If you have an FTP path, put that before the archive directory, and again use a slash at the end, but not at the start, so that you have either testblog/archives/ or just archives/ and enter an archive filename, again with a .html or .htm extension.

Make sure you entered everything correctly, and click "save changes". Now go back to the second window, and click next to create a new blog with your old address. You don't want to publish it, just create it so that nobody takes your address while your back is turned. Once Blogger has created your new blog with the old url, close that window.

Back in the first window, you are ready to publish! Click the publish button, and then win-or-lose, save a copy of the FTP log. If you get an error, click the link to view it in the bottom frame, select it all and copy it into a text file. If Blogger claims to have published successfully, cheer, but also "view ftp log" and again, save it in a text file.

Now, view your web page in its new home. Did it appear? Do you have archive links, and do they work? You almost certainly don't have all your archives, since Blogger rarely notices that it needs to republish old archives. Back in the "edit your blog" window, click the Archive button, and click "republish all". View web page again. Now do you have your archives? If something is missing, take a close look at the FTP log, and see if you can figure out what went wrong. If not, you'll probably have to post in the Blogger Discuss forum, but at least you'll have your FTP log saved, to explain what went wrong. If it all works, congratulations, and welcome to your new home! Be sure to delete the "I'm moving" post from your blog's new home, and be careful not to publish the temporary blog you created to save your address, at least until after a new archiving period (week or month) starts, so that it doesn't overwrite your final Blog*Spot archive until people have adjusted their bookmarks.



Templates - Making relative links work

Blogger makes relative links (links like <a href="archives/archive.html"> are relative, links like <a href="http://www.domain.com/archives/archive.html"> are absolute links) a bit more difficult to manage than usual, because most people keep their archives in a different directory than their main page. If you link to "images/mypic.jpg" in a post, then when that post is archived the link will point to "archives/images/mypic.jpg" and thus not be found. The same thing happens if you put a relative link in your main template, because the archive pages are also created from your main template. Fear not, there are two simple fixes.

Fix one is to use a "base href" tag to tell the browser to start every relative url with the path to your main directory. In your main template, in the <head> section, include the tag <base href="<$BlogURL$>">. If you have the separate archive index page style of archives, include a base href in the <head> section of your archive template as well. The next time you publish or post & publish, all your relative links will start from the directory where you have your main page, whether they are in that directory, or in your archives directory. Just be sure you remember to change the Blog URL in your settings if you move your blog!

The second fix is to use server-rooted paths rather than relative paths: a server rooted path starts with a slash, and lists all the directories from the root directory of the server. For example, if your main page was www.example.com/index.html and your archives were in www.example.com/archives/archive.html, then a server-rooted link to the archives would be <a href="/archives/archive.html">, and a server-rooted link to an image in www.example.com/images/ would look like <img src="/images/image.jpg">. However, if your main page is in www.freehost.com/bunch12/~username/blog/blogger.html, a server-rooted link will start /bunch12/~username/blog/, and using a base href tag will be a whole lot easier (once you get used to it).



Archives - Missing archives

Are some (or all) of your blog's archive pages missing from the index? Worse yet, are some (or all) of your archive pages themselves missing, or not matching your current template? First, from the Blogger editor, click the Archive button on the toolbar. If all of your archives are listed there, clicking republish all should clear things up (unless Blogger is having a temporary publishing problem). If they aren't all listed, here's how to remind Blogger that they exist: click the link for archive settings, and change your archive frequency to no archive, and click enter (don't worry, it won't delete your archived posts); then change the archive frequency back to what it was to start with, click enter, and the missing weeks or months should be back in the list. Click republish all, and they should be back on your site. [stolen from michael paige's late, lamented probs.blogspot.com]



Archives - Rewrite the date format for archive links

Jake has an excellent solution to the problem of ugly 02/04/2001 - 02/10/2001 archive links in the Developer's discussion forum. Once I got interested in using Javascript to monkey with the archive link names, I wrote enough scripts that I put up a web page to house them, and then wrote a script generator to let you produce customized scripts.